From owner-freebsd-current@FreeBSD.ORG Sat Dec 13 14:19:37 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3A93816A4CE for ; Sat, 13 Dec 2003 14:19:37 -0800 (PST) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB18A43D09 for ; Sat, 13 Dec 2003 14:19:34 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) by mailman.zeta.org.au (8.9.3p2/8.8.7) with ESMTP id JAA10146; Sun, 14 Dec 2003 09:19:04 +1100 Date: Sun, 14 Dec 2003 09:19:03 +1100 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Poul-Henning Kamp In-Reply-To: <23707.1071348202@critter.freebsd.dk> Message-ID: <20031214090456.Q7016@gamplex.bde.org> References: <23707.1071348202@critter.freebsd.dk> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: Freebsd Current Subject: Re: SC520 and reboot X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Dec 2003 22:19:37 -0000 On Sat, 13 Dec 2003, Poul-Henning Kamp wrote: > If you run adjkerntz -a it fiddles the CMOS RTC clock and possibly the > "century" byte I think. If your BIOS uses a checksum on the RTC and > adjkerntz doesn't know about it, your BIOS will think the contents is > trashed. Actually, adjkerntz -a uses the MI interface resettodr() to set the hardware clock, CMOS or otherwise. This has the same tiny chance of trashing the clock than the MI syscall settimeofday() and a better chance of setting it to the current time, since it has a smaller race than settimeofday(). The CPU_ADJKERNTZ sysctl exists just to minimize this race, but it has never really worked in at least the i386 implementation since resettodr() doesn't wait to sync with the hardware so it sets a time that is wrong by an average half a second. Bruce