Re: [patch] stime/settimeofday/adjtimex SMP races (2.2.12 and

Andrea Arcangeli (andrea@suse.de)
Tue, 21 Sep 1999 02:38:58 +0200 (CEST)


On Mon, 20 Sep 1999, Ryan Murray wrote:

>set_rtc_mmss error messages are back when I removed RTC from the kernel.

Ok. This sound odd to me so there's definetly still something we are
missing.

>hwclock seems to return a clock that is all over the map, right now it

Could you discover why hwclock is running in your system also after the
boot script and before shutdown?

hwclock should never run while the system is at the production runlevel.

Maybe you have some cron running hwclock? With ntpd enabled you shouldn't
run hwclock anymore as it's the kernel which cares to flush the system
clock to the hardware at regulary intervals. And ntpd should only call
adjtimex(2) and settimeofday(2) to play with the system data and not with
the hardware data. This is at least my understanding of the thing.

>Should I try it with RTC back in the kernel?

I would like to first fix the problem with the rtc device driver out of
the game.

hwclock without /dev/rtc is sure potentially racy as it can't clear
globally irqs so the timer irq may happens on the other CPU at any time
and if you are unlucky the timer irq may also be the one that will flush
the system time to the hardware clock so both the CPU may write to the
CMOS at the same time. Anyway the race seems very small to me and I would
be surprised if you triggered it at shutdown time.

Also make sure your hwclock binary is safe. If a binary hwclock out there
is buggy then we are wasting time looking at the kernel 8).

andrea@laser:~/kernel > hwclock -v
hwclock 2.4c/util-linux 2.9t

Andrea

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/