From owner-freebsd-current@FreeBSD.ORG Mon Nov 14 17:33:17 2005 Return-Path: X-Original-To: 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 63F7E16A41F; Mon, 14 Nov 2005 17:33:17 +0000 (GMT) (envelope-from mcsi@mcsi.pp.ru) Received: from portpc-design.spb.ru (portpc-design.spb.ru [81.176.64.110]) by mx1.FreeBSD.org (Postfix) with ESMTP id D19A443D46; Mon, 14 Nov 2005 17:33:16 +0000 (GMT) (envelope-from mcsi@mcsi.pp.ru) Received: from [83.237.55.215] (ppp83-237-55-215.pppoe.mtu-net.ru [83.237.55.215]) (authenticated bits=0) by portpc-design.spb.ru (8.13.5/8.13.5) with ESMTP id jAEHXBNY076351; Mon, 14 Nov 2005 20:33:11 +0300 (MSK) (envelope-from mcsi@mcsi.pp.ru) Message-ID: <4378CA53.5010201@mcsi.pp.ru> Date: Mon, 14 Nov 2005 20:33:07 +0300 From: Maxim Maximov User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.12) Gecko/20051109 X-Accept-Language: ru, en-us, en MIME-Version: 1.0 To: Bill Paul References: <20051110194339.6244116A420@hub.freebsd.org> <4374C705.6070908@mcsi.pp.ru> In-Reply-To: <4374C705.6070908@mcsi.pp.ru> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV version 0.87.1, clamav-milter version 0.87 on 81.176.64.226 X-Virus-Status: Clean Cc: current@freebsd.org Subject: Re: CURRENT panics sometimes 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: Mon, 14 Nov 2005 17:33:17 -0000 Maxim Maximov wrote: > Bill Paul wrote: >> >> >>>> - If you are loading the driver via /boot/loader.conf, did you try >>>> _not_ doing that, and loading it afterwards? >>> >>> >>> No, I didn't. Even if I will do that, why the problem isn't solid? >>> Right now and most of the time I'm happy with this driver loaded at >>> boot time. >> >> >> >> I'm not sure. I'm running an SMP system with a Broadcom PCI card and >> haven't run into this myself. Though that's with 6.0-RELEASE, not >> -current. >> (I'm using the same NDIS code that's in -current though.) >> >> How often does it crash? > > > 1 time of 3. > >> >> >>>> When you provide this information, maybe you will get help. >>>> >>>> NOTE: Windows NDIS drivers assume that by the time you intialize them, >>>> the entire OS is up and running, including scheduling and, if present, >>>> multiple CPUs. But in FreeBSD, the kernel is running in 'cold start' >>>> state when it probes/attaches devices, and not all of the scheduling >>>> mechanisms are available yet (for example, you can not msleep() while >>>> cold == 1). This means loading your driver via /boot/loader.conf is >>>> something of a hit-or-miss proposition: sometimes they don't work >>>> right, >>>> sometimes they do. To be really safe, you should load them _after_ the >>>> system has come up all the way. >>>> >>>> Unfortunately, it's necessary to initialize the driver briefly in >>>> ndis_attach() in order to find out the device's station address. (You >>>> can only do it via MiniportQueryInformation(), and that only works >>>> after >>>> MiniportInitialize() has been called.) >>> >>> >>> When 'ntpdate' is called during boot process, everything is (or >>> should be) initialized I believe. >> >> >> >> Yes, but MiniportInitialize() has already been called once while cold >> == 1. >> What I'm saying is you have to avoid doing that entirely. Try doing it >> by loading bcmwl5_sys.ko after the system has gone multiuser. If the >> problem persists, then I'm just full of crap (wouldn't be the first >> time) and there's something else going wrong, but I think it bears >> investigating. >> > > OK, I'll awake this thread is the problem happens again. Thanks for > looking into it! Well, loading driver (and whole NDIS) when cold==0 led to the same panic on fourth boot. Third boot was even stranger, when suddenly console stopped printing boot messages but continued to load (determined by HDD activity and keyboard reactions). I had to press Ctrl-C few times when OS have been wating for DNS resolutions. Then it even tried to switch display to graphics mode when xdm comes up, but unsuccessful. Just the cursor disappeared. After few keypresses it reboots. Display showed nothing. Please tell me where I should look at in KDB when this happen again? Examine some softclock-related struct? Anything else? -- Maxim Maximov