Messages in this thread |  | | Date | Mon, 5 Nov 2001 23:08:47 +0000 (GMT) | From | Riley Williams <> | Subject | Re: PROBLEM: Linux updates RTC secretly when clock synchronizes |
| |
Hi Pavel.
>> PROBLEM: Linux updates RTC secretly when clock synchronizes. >> >> Please CC replies etc to Ian Maclaine-cross <iml@debian.org>. >> >> When /usr/sbin/ntpd synchronizes the Linux kernel (or system) clock >> using the Network Time Protocol the kernel time is accurate to a few >> milliseconds. Linux then sets the Real Time (or Hardware or CMOS) >> Clock to this time at approximately 11 minute intervals. Typical >> RTCs drift less than 10 s/day so rebooting causes only millisecond >> errors. >> >> Linux currently does not record the 11 minute updates to a log file. >> Clock programs (like hwclock) cannot correct RTC drift at boot time >> without knowing when the RTC was last set. If NTP service is available >> after a long shutdown, ntpd may step the time. Worse after a longer >> shutdown ntpd may drop out or even synchronize to the wrong timezone. >> The workarounds are clumsy. >> >> Please find following my small patch for >> linux/arch/i386/kernel/time.c which adds a KERN_NOTICE of each 11 >> minute update to the RTC. This is just for i386 machines at present. >> A script can search the logs for the last set time of the RTC and >> update /etc/adjtime. Hwclock can then correct the RTC for drift and >> set the kernel clock.
> That seems as very wrong solution.
> What about just making kernel only _read_ system clock, and never > set it? That looks way cleaner to me.
It is cleaner. However, I feel that the RTC code should printk (at least as KERN_DEBUG if not as KERN_NOTICE) whenever the RTC is written to. It's too important a subsystem to be left hidden like it currently is.
Best wishes from Riley.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |