From owner-freebsd-current Wed Jul 22 21:02:19 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id VAA01496 for freebsd-current-outgoing; Wed, 22 Jul 1998 21:02:19 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.15.68.22]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id VAA01416 for ; Wed, 22 Jul 1998 21:02:08 -0700 (PDT) (envelope-from bde@godzilla.zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.8.7) id OAA09064; Thu, 23 Jul 1998 14:01:38 +1000 Date: Thu, 23 Jul 1998 14:01:38 +1000 From: Bruce Evans Message-Id: <199807230401.OAA09064@godzilla.zeta.org.au> To: bde@zeta.org.au, phk@critter.freebsd.dk Subject: Re: tickadj -t not changing tick Cc: brian@Awfulhak.org, freebsd-current@FreeBSD.ORG, jak@cetlink.net Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG >>The whole problem may be caused by APM. APM's time handling is of low >>quality. > >As currently designed, there is only the RTC chip which is reliably keeping >track of time on a APMized system, and only reading the registers is reliable, >the number of interrupts and their frequency is subject to change without >notice. The RTC is sufficiently reliable. One reason that APM's time handling is of low quality because it doesn't sync with the RTC; it just reads it. Another reason is that it doesn't honour the current spl; it uses splsoftclock() to force the ipl to the level for timeout routines. This may be just a no-op if suspend/resume are always called as timeout routines. My version of inittodr() syncs with the RTC. This takes a second or two. The delay would be bad if suspension intervals are short enough for the innaccurate reading of the RTC to casue negative times. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message