From owner-freebsd-current@FreeBSD.ORG Fri Dec 16 21:38:10 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 5F5C716A426 for ; Fri, 16 Dec 2005 21:38:10 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from speedfactory.net (mail6.speedfactory.net [66.23.216.219]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3044643D58 for ; Fri, 16 Dec 2005 21:38:06 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (unverified [66.23.211.162]) by speedfactory.net (SurgeMail 3.5b3) with ESMTP id 3965769 for multiple; Fri, 16 Dec 2005 16:35:53 -0500 Received: from localhost (john@localhost [127.0.0.1]) by server.baldwin.cx (8.13.1/8.13.1) with ESMTP id jBGLbaIG082363; Fri, 16 Dec 2005 16:37:48 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Andrew Gallatin Date: Fri, 16 Dec 2005 16:38:02 -0500 User-Agent: KMail/1.8.2 References: <17314.60552.595375.783753@grasshopper.cs.duke.edu> <200512161454.22232.jhb@freebsd.org> <17315.10532.603357.165238@grasshopper.cs.duke.edu> In-Reply-To: <17315.10532.603357.165238@grasshopper.cs.duke.edu> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200512161638.03037.jhb@freebsd.org> X-Virus-Scanned: ClamAV 0.87.1/1210/Thu Dec 15 10:23:22 2005 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.8 required=4.2 tests=ALL_TRUSTED autolearn=failed version=3.0.2 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on server.baldwin.cx X-Server: High Performance Mail Server - http://surgemail.com r=1653887525 Cc: freebsd-current@freebsd.org Subject: Re: PREEMPTION vs ndisulator 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, 16 Dec 2005 21:38:11 -0000 On Friday 16 December 2005 03:52 pm, Andrew Gallatin wrote: > John Baldwin writes: > > On Friday 16 December 2005 11:34 am, Andrew Gallatin wrote: > > > I'm trying to use an ndis driver on an amd64 machine running > > > FreeBSD/amd64 -current from yesterday. If I enable PREEMPTION, the > > > machine hangs when loading the driver (kldload never returns): > > > > > > ndis0: mem > > > 0xfc000000-0xfcffffff,0xfdf00000-0xfdffffff irq 18 at device 0.0 on > > > pci5 ndis0: NDIS API version: 5.1 > > > > > > > > > Witness detects no problems, and if I disable PREEMPTION, the driver > > > seems to work fine. Is PREEMPTION not safe to be used with the > > > ndisulator, or is there a problem with the ndis driver itself? > > > > > > I've included some very brief debugging info below.. > > > > Looks like an ithread has preempted your driver's start routine. If you > > let it run some more and then break into ddb is the same thread (pid 11) > > still running? Also, which process is pid 11? > > Naturally, I no longer have that kernel :( > > I just built a new, PREEMPTION enabled kernel. Booting in > single user, I see a hang in the irq thread. It seems to > always be in this thread. > > I think the difference is that I don't have the if_sk driver loaded, > which shares that irq. > > Can you remind me how to get irq counts from ddb? It > would be intersting to see if the irq hander was called > repeatedly, or if it was just stuck in the handler. show intrcnt -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org