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.

Eugene
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to