From owner-freebsd-current@FreeBSD.ORG Fri Jun 17 19:20:45 2005 Return-Path: X-Original-To: freebsd-current@freebsd.org 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 0E21616A41C for ; Fri, 17 Jun 2005 19:20:45 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id B8D6243D48 for ; Fri, 17 Jun 2005 19:20:44 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from [10.50.41.231] (Not Verified[216.133.140.1]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Fri, 17 Jun 2005 15:34:10 -0400 From: John Baldwin To: freebsd-current@freebsd.org Date: Fri, 17 Jun 2005 14:50:42 -0400 User-Agent: KMail/1.8 References: <20050516113420.GA786@schweikhardt.net> <20050526205831.GA958@schweikhardt.net> <20050608190147.GA917@schweikhardt.net> In-Reply-To: <20050608190147.GA917@schweikhardt.net> MIME-Version: 1.0 Content-Disposition: inline Message-Id: <200506171450.44146.jhb@FreeBSD.org> Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Cc: Jens Schweikhardt Subject: Re: Timekeeping hosed by factor 3, high lapic[01] interrupt rates X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Fri, 17 Jun 2005 19:20:45 -0000 On Wednesday 08 June 2005 03:01 pm, Jens Schweikhardt wrote: > On Thu, May 26, 2005 at 10:58:31PM +0200, Jens Schweikhardt wrote: > # On Thu, May 26, 2005 at 10:30:16AM -0700, Doug White wrote: > # # On Mon, 23 May 2005, Jens Schweikhardt wrote: > # # > # # > ... > # # > # # 3. Backout rev 1.218 of src/sys/i386/isa/clock.c so the irq0 > interrupt # # > # # handler is reactivated and the RTC fiddled. > # # > # > # # > # Will do so next. I've nailed the change between March 6 and March > 30. # # > # 1.218 is from 2005/03/24 21:34:16, which would fit. > # # > > # # > We have a winner. Backing out 1.218 from a 2005/03/24 system does the > trick, # # > as well as a CURRENT without 1.218 (but 1.219-220 in there) > bring back irq0 # # > and time dilation is gone. All clocks work correctly. > # # > # # Hm ... not sure what part of that commit is the bad part. You might > try # # changing > # # > # # if (!using_lapic_timer) { > # # > # # to > # # > # # if(1) { > # # > # # in the most recent rev of clock.c to register irq0 again. If that > doesn't # # chang ethe dialation then something else in the system must be > depending # # on the RTC periodic interrupt. > # > # It does make time dilation go away. > > Any chance this gets backed out, or worked around, e.g. with a > sysctl, device hint, or some other knob? Is this the patch you are running with? >Index: clock.c =================================================================== RCS file: /usr/cvs/src/sys/i386/isa/clock.c,v retrieving revision 1.220 diff -u -r1.220 clock.c --- clock.c 14 May 2005 09:10:01 -0000 1.220 +++ clock.c 27 May 2005 19:42:54 -0000 @@ -784,7 +784,7 @@ * clocks, setup the interrupt handler for the 8254 timer 0 so * that it can drive hardclock(). */ - if (!using_lapic_timer) { + if (!using_lapic_timer || 1) { intr_add_handler("clk", 0, (driver_intr_t *)clkintr, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); i8254_intsrc = intr_lookup_source(0); Also, can you get the output of 'sysctl kern.clockrate' for both cases? -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org