From owner-freebsd-current@FreeBSD.ORG Sun May 9 05:06:13 2004 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 CB9CC16A4CE for ; Sun, 9 May 2004 05:06:13 -0700 (PDT) Received: from mailout1.pacific.net.au (mailout1.pacific.net.au [61.8.0.84]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1559B43D53 for ; Sun, 9 May 2004 05:06:13 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from mailproxy2.pacific.net.au (mailproxy2.pacific.net.au [61.8.0.87])i49C6C4u008242; Sun, 9 May 2004 22:06:12 +1000 Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) i49C66HW018608; Sun, 9 May 2004 22:06:11 +1000 Date: Sun, 9 May 2004 22:06:06 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Timo Geusch In-Reply-To: <20040509101356.GA93300@odie.unix-consult.com> Message-ID: <20040509220029.D8834@gamplex.bde.org> References: <20040509101356.GA93300@odie.unix-consult.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@FreeBSD.org Subject: Re: sio: lots of silo overflows on Asus K8V with Moxa Smartio C104H/PCI 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: Sun, 09 May 2004 12:06:13 -0000 On Sun, 9 May 2004, Timo Geusch wrote: > On Tue, May 04, 2004 at 02:17:16PM +1000, Bruce Evans wrote: > > BTW, there are about 34 broken drivers that use > > BUS_SETUP_INTR(device_get_parent(...), ...) instead of bus_setup_interrupt(). > > This just evades printing of the FAST/GIANT-LOCKED/MPSAFE boot message. > > BUS_SETUP_INTR() seems to be needed in only 10 files. > > Is there a fairly simple way to indentify where BUS_SETUP_INTR is needed? > I might have a couple of hours to spare to look into this... I just grepped for "BUS_SETUP_INTR.*device_get_parent" . There is no reason to use BUS_SETUP_INTR() when bus_setup_intr() can do the same thing (except for printing the message. It might not be correct that bus_setup_intr() is the only place that prints the FAST/GIANT-LOCKED/MPSAFE message, but printing it in every layer would be wrong. Bruce