From owner-freebsd-arch@FreeBSD.ORG Tue Jul 19 08:31:52 2005 Return-Path: X-Original-To: arch@FreeBSD.org Delivered-To: freebsd-arch@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A365316A41C; Tue, 19 Jul 2005 08:31:52 +0000 (GMT) (envelope-from phk@phk.freebsd.dk) Received: from haven.freebsd.dk (haven.freebsd.dk [130.225.244.222]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E5F543D58; Tue, 19 Jul 2005 08:31:52 +0000 (GMT) (envelope-from phk@phk.freebsd.dk) Received: from phk.freebsd.dk (unknown [192.168.48.2]) by haven.freebsd.dk (Postfix) with ESMTP id 44040BC83; Tue, 19 Jul 2005 08:31:50 +0000 (UTC) To: Robert Watson From: "Poul-Henning Kamp" In-Reply-To: Your message of "Mon, 18 Jul 2005 19:59:04 BST." <20050718183717.N9430@fledge.watson.org> Date: Tue, 19 Jul 2005 10:31:50 +0200 Message-ID: <1447.1121761910@phk.freebsd.dk> Sender: phk@phk.freebsd.dk Cc: arch@FreeBSD.org Subject: Re: Network-related device drivers and MPSAFEty: status, and plans for 7.0 X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Jul 2005 08:31:52 -0000 In message <20050718183717.N9430@fledge.watson.org>, Robert Watson writes: > >This e-mail is about the second category -- device drivers which still run >with or require Giant. These in turn can be broken out into two >categories: > >- Device drivers that appear to have been modified to run MPSAFE, and are > possibly running partly Giant-free (i.e., perhaps the outbound path but > not interrupt handler, or vice versa). > >- Device drivers that haven't been touched and rely on Giant entirely. Can I add a little item to this project ? Some of the mii/phy drivers we have are specific to just one particular network driver. For instance I belive the brgphy.c is only ever used with the if_bge driver. These mii/phy drivers should be moved out of the miibus group and into the specific driver so that they only get put in the kernel if the driver is in the kernel. Currently, if a kernel is cut down to only a single driver for instance if_sis the brgphy.c driver is still compiled in because miibus pulls it in despite the fact that if_bge is not there. The practical change is the change sys/conf/files to compile the mii/phy driver files on the same option as the device driver, and to take the source files out of the miibus module kld and put them into the driver module. Poul-Henning -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.