[chrony-dev] Re: Are there known issues in destructive tests on arm64 or ppc64

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-dev Archives ]


> >
> > Could that be due to the use of “-x”? IFAIR you have extra stuff on
> > Ubuntu about that option.
>
> I was testing the current master tarball from upstream to avoid any confusion.
> => https://git.tuxfamily.org/chrony/chrony.git/snapshot/chrony-master.tar.gz
>
> That exposes the same behavior, so none of the Debian/Ubuntu delta
> seems to matter for this problem.
>

As mentioned before it only happens with -s and the rtcfile config.
Maybe the RTC behavior on those platforms is different?

It seems that with that setup the first child that chronyd forks
almost immediately dies (see the strace) and emits a SIGCHLD.
Not picking that one up is what causes the defunct process in ps output.
But after checking that a bit, that is all the intended initialization
in `go_daemon`.

Let's skip all that by enabling -d which will let us stay within the
main process, and e voila we get:
# ./chronyd  -f /home/ubuntu/chrony-3.5/test/system/tmp/chronyd.conf -s -d
2019-12-06T11:21:09Z chronyd version DEVELOPMENT starting (+CMDMON
+NTP +REFCLOCK +RTC +PRIVDROP -SCFILTER -SIGND +ASYNCDNS +SECHASH
+IPV6 -DEBUG)
2019-12-06T11:21:09Z Wrong owner of /var/run/chrony (UID != 0)
2019-12-06T11:21:09Z Disabled command socket /var/run/chrony/chronyd.sock
2019-12-06T11:21:09Z Initial frequency -21.508 ppm
2019-12-06T11:21:09Z Could not enable RTC interrupt : Invalid argument

It turns out the hanging select is
#0  0x00007ffff7c40864 in __GI___select (nfds=514,
readfds=0x7fffffffed98, writefds=0x0, exceptfds=0x0, timeout=0x0) at
.../sysdeps/unix/sysv/linux/select.c:41
#1  0x0000000100014440 in SCH_MainLoop () at sched.c:753
#2  0x0000000100004880 in main (argc=<optimized out>,
argv=0x7ffffffff508) at main.c:619

Inside RTC_TimeInit triggers the Invalid argument:
#0  switch_interrupts (onoff=1) at rtc_linux.c:569
#1  switch_interrupts (onoff=<optimized out>) at rtc_linux.c:562
#2  0x0000000100011c64 in RTC_TimeInit (after_hook=<optimized out>,
anything=<optimized out>) at rtc.c:183
#3  0x0000000100004878 in main (argc=<optimized out>,
argv=0x7ffffffff508) at main.c:612

The FD points to /dev/rtc0 as expected.

To summarize:
- RTC init fails
- SCH_MainLoop then hangs
Could the second be a consequence of the first?
Does this make sense to anyone?

--
To unsubscribe email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject.
For help email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/