From owner-freebsd-hardware@FreeBSD.ORG Tue Apr 27 02:10:25 2010 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E33EB1065670; Tue, 27 Apr 2010 02:10:24 +0000 (UTC) (envelope-from pisymbol@gmail.com) Received: from mail-gw0-f54.google.com (mail-gw0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id 8864A8FC0A; Tue, 27 Apr 2010 02:10:24 +0000 (UTC) Received: by gwj18 with SMTP id 18so3968720gwj.13 for ; Mon, 26 Apr 2010 19:10:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=YR0jzaNWhlvslyP55RyUO4mqSdq3/S8rxnV8hG/QCnU=; b=ZrVpEN87SVnwp5t8H36BgTxmHBM7PvQIwR7rZcgz7maBE0hAbw1nDpfxvjCBenDAEa jZr7guWt/wi/Svxlt11fgtpTpo17jyRvoJvHVl09Fy9VQXGdFVVU3AaDhsPZNNWLhPeJ kTsm0qNya7EcLYi6Yg1ueU1GpuT+s8/tteWEQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=utyrFN+wHRAH2E/p9l21IJ321IkTbIol9AZUX2440XyTBg9CUbQMI3LeiD0tvbXDJI uFK2ycqZeUhG1B+90AOE5FiluMbjUm1RfOPbxBqbHyePr3J3sfcY+wM4uRSucqOnmFhD zEtk9Ba0eFrgkxp82XVEixrORqA1Qb8wjlCag= MIME-Version: 1.0 Received: by 10.101.149.17 with SMTP id b17mr515180ano.80.1272334217642; Mon, 26 Apr 2010 19:10:17 -0700 (PDT) Received: by 10.100.194.19 with HTTP; Mon, 26 Apr 2010 19:10:17 -0700 (PDT) In-Reply-To: <201004201202.56275.jhb@freebsd.org> References: <4B5478D1.4000900@greatbaysoftware.com> <201004200913.05426.jhb@freebsd.org> <4BCDCEB2.8040407@greatbaysoftware.com> <201004201202.56275.jhb@freebsd.org> Date: Mon, 26 Apr 2010 22:10:17 -0400 Message-ID: From: Alexander Sack To: John Baldwin Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Charles Owens , freebsd-hardware@freebsd.org Subject: Re: Minute+ delay between kernel load and initialization (solved!) X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Apr 2010 02:10:25 -0000 On Tue, Apr 20, 2010 at 12:02 PM, John Baldwin wrote: > On Tuesday 20 April 2010 11:56:34 am Charles Owens wrote: >> On 4/20/2010 9:13 AM, John Baldwin wrote: >> > On Monday 19 April 2010 6:05:06 pm Charles Owens wrote: >> > >> >> On 1/18/2010 10:05 AM, Charles Owens wrote: >> >> >> >>> Hello, >> >>> >> >>> We have a new system based on the Intel S5520 motherboard that seems= to >> >>> work fine except during _every_ boot it pauses for about one minute = 15 >> >>> seconds just before any kernel initialization messages appear. =A0 W= e see >> >>> the loader appearing to complete its work (the kernel is loaded) and >> >>> then... it sits. =A0Once it starts up again (with usual kernel-boot >> >>> messages) it appears to boot normally (no error messages). >> >>> >> >>> This has been seen with both FreeBSD 8.0 and 7.1, using GENERIC kern= els. >> >>> =A0I'd appreciate any and all assistance in figuring this out. >> >>> >> >>> Boot output follows (happens to be from a PAE-enabled kernel) >> >>> >> >>> Thank you, >> >>> >> >>> Charles >> >>> >> >>> >> >>> >> >> [truncated] >> >> >> >> An answer to this was graciously provided by Titus Manea. =A0 For det= ails, >> >> see >> >> >> >> http://www.freebsd.org/cgi/query-pr.cgi?pr=3Di386/144956 >> >> >> > Interesting. =A0I do not see the long delay on Nehalem machines here. = =A0Would >> > either of you be able to debug this further? =A0You could maybe grab T= SC > values >> > at various points during the early console probe and print out the > relevant >> > deltas after cninit() returns. =A0You could then move the TSC probe po= ints >> > around to pinpoint which operations are taking a long time. >> > >> >> John, >> >> I'm not going to have the cycles to look at this any time soon, >> unfortunately. =A0 But, just in case, how does one display TSC values? = =A0We >> did try to enable the kernel debugger, but the delay happens _before_ >> the debugger prompt is available. >> >> We now think of this more as an issue seen with some particular >> motherboard/BIOS combinations .... initially the only thing we really >> had to go on was the fact that the behavior was seen on new >> Nehalem-based systems. > > You would have to patch the source to add various calls to rdtsc() that w= ere > saved in some sort of global array. =A0Then, once the console was fully > initialized you could print out the TSC deltas by walking the array and > printing out the delta between each pair of entries. =A0You could then mo= ve the > rdtsc() calls around on subsequent tests to narrow down where the pause i= s > happening. Sorry John, I completely missed this. If you haven't done it already, I can look into it for sure. I have several Nehalem machines that do this. Its on my TODO list though I thought the kdb probe was the fix? Is that NOT the fix? Just let me know, guys, -aps