Re: [chrony-dev] Re: [PATCH] test: check if RTC is RTC_UIE_ON capable

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


On Tue, Dec 10, 2019 at 5:59 PM Miroslav Lichvar <mlichvar@xxxxxxxxxx>
wrote:

> On Tue, Dec 10, 2019 at 04:25:31PM +0100, Christian Ehrhardt wrote:
> > On Tue, Dec 10, 2019 at 4:19 PM Miroslav Lichvar <mlichvar@xxxxxxxxxx>
> > > I'm sorry for changing my mind, but I now think this case should be
> > > handled gracefully in chronyd and not avoided in the test. According
> > > to the man page, the -s option is supposed to work even with no RTC or
> > > broken RTCs. A hang or fatal error with the -s option may break
> > > the user's expectation.
> > >
> > > Do you agree?
> > >
> >
> > Yes, but I think the changes are not mutually exclusive and should both
> be
> > added.
> >
> > -s needs the change you suggested to make the fail fatal.
>
> As I tried to explain in the later post, I think chronyd -s should not
> fail if the RTC doesn't support interrupts, as the documentation
> implies chronyd can work with "broken" RTCs and we shouldn't expect
> the users to test it before configuring chronyd.
>
> > Otherwise users will not realize that they don't get what they ordered.
>
> There will still be the error message in the log.
>
> Can you please try the test again with the latest code?
>

I tested with the current head being commit f5eb7daf "rtc: disable
interrupts in finalization"

With that the test finally worked on the two affected platforms that I had:
../run -d 103-refclock
103-refclock   Testing reference clocks:
  non-default settings:
    extra_chronyd_directives= refclock SOCK
/home/ubuntu/chrony/test/system/tmp/refclock.sock refclock SHM 100
  starting chronyd                                              OK
  waiting for synchronization                                   OK
  stopping chronyd                                              OK
  checking chronyd messages                                     OK
  checking chronyd files                                        OK
PASS


SUMMARY:
  TOTAL  1
  PASSED 1
  FAILED 0    ()
  SKIPPED 0   ()


But when run in debug mode it still looks the same:
$ ./chronyd -d -s -f /root/chronyd.conf
019-12-11T14:37:35Z chronyd version DEVELOPMENT starting (+CMDMON +NTP
+REFCLOCK +RTC +PRIVDROP -SCFILTER -SIGND +ASYNCDNS +SECHASH +IPV6 -DEBUG)
2019-12-11T14:37:36Z System time set from RTC
2019-12-11T14:37:36Z Initial frequency -13.014 ppm
2019-12-11T14:37:36Z Could not enable RTC interrupt : Invalid argument

I'd have expected a fatal exit in these cases now - is that right?



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