From owner-freebsd-current@FreeBSD.ORG Fri Jul 11 13:18:10 2003 Return-Path: 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 D379E37B404 for ; Fri, 11 Jul 2003 13:18:10 -0700 (PDT) Received: from rootlabs.com (root.org [67.118.192.226]) by mx1.FreeBSD.org (Postfix) with SMTP id 1B98543FAF for ; Fri, 11 Jul 2003 13:18:10 -0700 (PDT) (envelope-from nate@rootlabs.com) Received: (qmail 8600 invoked by uid 1000); 11 Jul 2003 20:18:11 -0000 Date: Fri, 11 Jul 2003 13:18:11 -0700 (PDT) From: Nate Lawson To: John Baldwin In-Reply-To: <200307110913.02566.jhb@FreeBSD.org> Message-ID: <20030711131726.D8593@root.org> References: <200307110913.02566.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: current@freebsd.org Subject: Re: Witness panic (fxp/polling related) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 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, 11 Jul 2003 20:18:11 -0000 On Fri, 11 Jul 2003, John Baldwin wrote: > if (ether_poll_register(fxp_poll, ifp)) { > /* disable interrupts */ > CSR_WRITE_1(sc, FXP_CSR_SCB_INTRCNTL, FXP_SCB_INTR_DISABLE); > fxp_poll(ifp, 0, 1); > FXP_UNLOCK(sc); > return; > > Try moving the FXP_UNLOCK() up before the call to fxp_poll() (it > should be safe to do so). I looked it over and indeed this is the correct fix. Please commit. Thanks, Nate