CMOS, daylight saving time and dual-boot
mike at vintners.net
Sun Oct 28 10:14:21 PDT 2007
If you're in the US, you're a week early for the changeover -- your
timezone files need to be corrected.
Eugene Grosbein wrote:
> On Mon, Oct 29, 2007 at 02:17:44AM +1100, Ian Smith wrote:
>> > I have dual-boot machine with 7.0-BETA1 and Windows
>> > that keeps CMOS time local (there is /etc/wall_cmos_clock also).
>> > It was tuned off yesterday evening and turned back on today,
>> > loading FreeBSD. Meantime the switch from Summer Time to Standard Time
>> > has ocurred. There is 'ntpd_enable="YES"' in /etc/rc.conf.
>> > Nothing in a system reacted on the end of Summer Time period,
>> > so ntpd just complained about 3600 seconds exceeded sanity limit
>> > and bailed out (documented behavour).
>> With standard /etc/crontab, adjkerntz -a (which catches DST changes) is
>> only run between midnight and 5am, and presumably your 'today' started
>> after then.
> Yes, really much later :-)
>> Perhaps running that once on boot, just in case, might help
>> in such circumstances?
> I'll test this. By the way, I cannot set local date
> to '02:59:00 summer time', it sets '02:59:00 winter time' :-(
> E.g., "date 200710280222.39" sets time in "KRAST" timezone
> (local time is GMT+8 in summer) and "date 200710280222.40"
> sets it so timezone changes to "KRAT". How could I set it
> to "200710280259 KRAST"?
>> I've done that without ntpd running, but ntpd
>> -qg once on booting should handle such surprise 3600s shifts better?
>> > There is Status Register B at the offset 0x0b in the ISA Compatible
>> > CMOS its least significant bit should keep Daylight Saving flag
>> > (on/off).
>> The bit appears to be DST enable, rather than storage of current state?
>> Windows date setting has a check box that I suspect reflects this bit.
> I don't think so, it seems that Windows keeps it's own flag
> to know if it should adjust local time for daylight savings.
> As you noted, FreeBSD always clears CMOS bit and
> that has no affect on Windows behavour.
>> You may find that windows will shift CMOS another hour when next booted
>> too, or at least that's what I recall W98 doing to me a couple of times
>> when I happened to boot it some time during some 6 month period :)
>> > Is it used in modern hardware? Does FreeBSD use it? It is supposed to
>> > use it?
>> /sys/isa/rtc.h has
>> #define RTCSB_DST 0x01 /* USA Daylight Savings Time enable */
>> but it's not referenced in /sys/i386/isa/clock.c (great bedtime reading)
>> which is the only place that updates the RTC, AFAIK. If I'm reading it
>> right, FreeBSD clears this bit during clock initialisation.
>> (5.5-STABLE here; I haven't checked if this code has changed since)
> The same in CURRENT. It seems we could use this bit as storage flag :-)
> I think about diskless stations that has no other storage for this.
> freebsd-stable at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
Mike Lempriere- Home: mike at vintners.net Phone: 206-780-2146
Cellphone: 206-200-5902; text pager: mlemp at tmail.com
More information about the freebsd-stable