From owner-freebsd-stable@FreeBSD.ORG Sun Oct 28 15:55:28 2007 Return-Path: Delivered-To: stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9EBCC16A4FD for ; Sun, 28 Oct 2007 15:55:28 +0000 (UTC) (envelope-from peterjeremy@optushome.com.au) Received: from fallbackmx01.syd.optusnet.com.au (fallbackmx01.syd.optusnet.com.au [211.29.132.93]) by mx1.freebsd.org (Postfix) with ESMTP id 3622D13C4BB for ; Sun, 28 Oct 2007 15:55:25 +0000 (UTC) (envelope-from peterjeremy@optushome.com.au) Received: from mail08.syd.optusnet.com.au (mail08.syd.optusnet.com.au [211.29.132.189]) by fallbackmx01.syd.optusnet.com.au (8.12.11.20060308/8.12.11) with ESMTP id l9SAZE9f030856 for ; Sun, 28 Oct 2007 21:35:14 +1100 Received: from server.vk2pj.dyndns.org (c220-239-20-82.belrs4.nsw.optusnet.com.au [220.239.20.82]) by mail08.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id l9SAZAmY032090 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 28 Oct 2007 21:35:12 +1100 Received: from server.vk2pj.dyndns.org (localhost.vk2pj.dyndns.org [127.0.0.1]) by server.vk2pj.dyndns.org (8.14.1/8.14.1) with ESMTP id l9SAZ9sw079307; Sun, 28 Oct 2007 21:35:09 +1100 (EST) (envelope-from peter@server.vk2pj.dyndns.org) Received: (from peter@localhost) by server.vk2pj.dyndns.org (8.14.1/8.14.1/Submit) id l9SAZ8uH079306; Sun, 28 Oct 2007 21:35:08 +1100 (EST) (envelope-from peter) Date: Sun, 28 Oct 2007 21:35:08 +1100 From: Peter Jeremy To: Eugene Grosbein Message-ID: <20071028103508.GQ70883@server.vk2pj.dyndns.org> References: <20071028083955.GA69713@svzserv.kemerovo.su> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="oplxJGu+Ee5xywIT" Content-Disposition: inline In-Reply-To: <20071028083955.GA69713@svzserv.kemerovo.su> X-PGP-Key: http://members.optusnet.com.au/peterjeremy/pubkey.asc User-Agent: Mutt/1.5.16 (2007-06-09) Cc: stable@freebsd.org Subject: Re: CMOS, daylight saving time and dual-boot X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Oct 2007 15:55:28 -0000 --oplxJGu+Ee5xywIT Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Oct 28, 2007 at 03:39:55PM +0700, Eugene Grosbein wrote: >It was tuned off yesterday evening and turned back on today, >loading FreeBSD. Meantime the switch from Summer Time to Standard Time >has ocurred. And we've just switched to Summer time. Based on a quick check, it doesn't look like adjkerntz(8) can handle your situation. In the absence of any independent time source, it's actually very difficult to handle this situation. In theory, it would be possible to note that the last system shutdown (or last time the RTC was set) and determine whether there's been a DST transition in the period between then and now and adjust the RTC appropriately (I believe Windows does this). The problem is that, unless this record is kept within the RTC and all OSs co-operate in its meaning, each OS will independently adjust the RTC when it is next rebooted (and I believe multi-boot PCs run into this problem). Overall, the only sane approach is to keep the RTC in UTC and compensate for DST in each OS. Unfortunately, this isn't possible due to historical decisions made by Microsoft. > There is 'ntpd_enable=3D"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). If you enable ntpdate, that should work around the problem because ntpdate doesn't have the 1000 second sanity limit. >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). >Is it used in modern hardware? Does FreeBSD use it? It is supposed to use = it? FreeBSD doesn't use it - Status Register B is updated in a couple of spots in /sys/i386/isa/clock.c to only have the 24hr bit set. I'm not sure what modern Windows expects but the DST rules embedded in the MC146818 are now accurate for only a fairly small part of the world. --=20 Peter --oplxJGu+Ee5xywIT Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQFHJGXc/opHv/APuIcRAsabAJ9A6off+YpTh5lnKWnAa+fAhHH3UQCghbnd Fj0TcNcyUAl/1uIN+i3TrpU= =0/CJ -----END PGP SIGNATURE----- --oplxJGu+Ee5xywIT--