[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Embedded systems and systemd



Hi,

Zbigniew Jędrzejewski-Szmek:
> > And it doesn't appear to regulate the system clock frequency, which
> > basically makes it an inaccurate dumb SNTP client which steps the clock when
> > it synchronises.
> Please see http://cgit.freedesktop.org/systemd/systemd/tree/src/timesync/timesyncd-manager.c?id=HEAD#n326 (manager_adjust_clock). timesync will adjust clock frequency
> unless the offset is too big.
> 
That code just steps the clock gradually instead of instantly,
by telling the kernel to temporarily change the clock rate.

What this code does _not_ do is to adjust the clock's intrinsic speed
(clock drift), i.e. the value which "real" NTP writes to the file
/var/lib/ntp/ntp.drift and which makes the clock more accurate even when
the external sync is missing.

It also should set ADJ_MAXERROR and ADJ_ESTERROR to some reasonable
estimate. Not zero, that's just plain wrong.

Until it does that right, I'd rather spend a megabyte or two on keeping a
"real" NTP server in memory. Yes, even on clients.

-- 
-- Matthias Urlichs

Attachment: signature.asc
Description: Digital signature


Reply to: