From owner-freebsd-hackers Mon Feb 4 13:57:59 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from wall.polstra.com (wall-gw.polstra.com [206.213.73.130]) by hub.freebsd.org (Postfix) with ESMTP id 5016B37B41E for ; Mon, 4 Feb 2002 13:57:52 -0800 (PST) Received: from vashon.polstra.com (vashon.polstra.com [206.213.73.13]) by wall.polstra.com (8.11.3/8.11.3) with ESMTP id g14Lvao48420; Mon, 4 Feb 2002 13:57:36 -0800 (PST) (envelope-from jdp@wall.polstra.com) Received: (from jdp@localhost) by vashon.polstra.com (8.11.6/8.11.0) id g14LvaX02099; Mon, 4 Feb 2002 13:57:36 -0800 (PST) (envelope-from jdp) Date: Mon, 4 Feb 2002 13:57:36 -0800 (PST) Message-Id: <200202042157.g14LvaX02099@vashon.polstra.com> To: hackers@freebsd.org From: John Polstra Cc: dominic_marks@btinternet.com Subject: Re: A question about timecounters In-Reply-To: <20020204213450.E923@gallium.localdomain> References: <20020204213450.E923@gallium.localdomain> Organization: Polstra & Co., Seattle, WA Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In article <20020204213450.E923@gallium.localdomain>, Dominic Marks wrote: > On Mon, Feb 04, 2002 at 01:21:25PM -0800, John Polstra wrote: > > I'm trying to understand the timecounter code, and in particular the > > reason for the "microuptime went backwards" messages which I see on > > just about every machine I have, whether running -stable or -current. > > I see them everywhere with -CURRENT, but not at all with -STABLE. This is > with two seperate machines. Perhaps that may add clues. I'm looking for something less empirical than that. When somebody says this problem is caused by too much interrupt latency, I assume they have a mental model of what is going wrong when this excessive latency occurs. Given that, it should be possible to make a statement like, "If X is never locked out for longer than Y, this problem cannot happen." I'm looking for definitions of X and Y. X might be hardclock() or softclock() or non-interrupt kernel processing. Y would be some measure of time, probably a function of HZ and/or the timecounter frequency. John -- John Polstra John D. Polstra & Co., Inc. Seattle, Washington USA "Disappointment is a good sign of basic intelligence." -- Chögyam Trungpa To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message