From owner-freebsd-hackers@FreeBSD.ORG Fri Feb 25 03:45:36 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0A70A16A4CE for ; Fri, 25 Feb 2005 03:45:36 +0000 (GMT) Received: from harmony.village.org (rover.village.org [168.103.84.182]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C91C43D58 for ; Fri, 25 Feb 2005 03:45:35 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.13.1/8.13.1) with ESMTP id j1P3iSSU056923; Thu, 24 Feb 2005 20:44:28 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 24 Feb 2005 20:44:33 -0700 (MST) Message-Id: <20050224.204433.46658352.imp@bsdimp.com> To: doconnor@gsoft.com.au From: "M. Warner Losh" In-Reply-To: <200502251348.06818.doconnor@gsoft.com.au> References: <421E7867.9060101@samsco.org> <20050224.190925.29021204.imp@bsdimp.com> <200502251348.06818.doconnor@gsoft.com.au> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-hackers@freebsd.org Subject: Re: Driver Update Disk discussion X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Feb 2005 03:45:36 -0000 [[ don't cc freebsd-hackers@ and hackers@ ]] In message: <200502251348.06818.doconnor@gsoft.com.au> "Daniel O'Connor" writes: : On Fri, 25 Feb 2005 12:39, M. Warner Losh wrote: : > One does not need to patch the source tree at to pick up ports modules : > for a kernel rebuild. One can build the ports modules as part of the : > kernel by simply defining PORTS_MODULES in a kernel config file. In : > addition, one can specify absolute paths with MODULES_OVERRIDE. One : > can also build modules outside the tree against a specific kernel (if : > they somehow depend on the config files). : : I think PORTS_MODULES is a little suboptimal.. How so? : I have a patch set which allows a port to install KLD source in a directory : and have it picked up during a build/install kernel. This has a few : advantages over calling the ports tree from those makefiles. The prime one : being that your source code does not change between upgrades without you : saying so. This is matters since (for example) the newer nvidia driver does : not work on some hardware the old driver does (eg Fx5200 Go). It also means : that the kernel build/install does not result in non kernel things being : altered. How do your patches work? Do they work with multiple kernel trees? : The disadvantage is that the KLD ports need to be modified to install the : source code in the right place (not hard) and that you will need to upgrade : your ports tree to keep up with ABI changes if you update your source but : IMHO it's better to make this sort of action explicit - otherwise the end : user is in the position of not knowing what has changed on their system. I guess I'm a little unclear why this is better or worse than PORTS_MODULES. I guess I'm missing the explicit step, since I only ever update the parts of my ports tree that I'm upgrading with portupgrade. : Also speaking of KLD ports.. I really wish they wouldn't install : into /boot/modules (I patch so they don't) as it is a really good way to : shoot yourself in the foot during an upgrade :( Usually this is only a problem when tracking or jumping to current, but I understand... Warner