From owner-freebsd-hackers@FreeBSD.ORG Thu Dec 6 19:28:44 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CE049697; Thu, 6 Dec 2012 19:28:44 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id 9BDAA8FC13; Thu, 6 Dec 2012 19:28:44 +0000 (UTC) Received: from pakbsde14.localnet (unknown [38.105.238.108]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 00475B91A; Thu, 6 Dec 2012 14:28:43 -0500 (EST) From: John Baldwin To: Damien Fleuriot Subject: Re: kernel module parallel build? Date: Thu, 6 Dec 2012 11:19:30 -0500 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p22; KDE/4.5.5; amd64; ; ) References: <5083D84E.50903@freebsd.org> <0EC857C9-4C1B-467D-8499-B493401B64BC@bsdimp.com> <20E25F79-2C53-45FD-BB7F-060AC9B26245@my.gd> In-Reply-To: <20E25F79-2C53-45FD-BB7F-060AC9B26245@my.gd> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201212061119.30524.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Thu, 06 Dec 2012 14:28:44 -0500 (EST) Cc: "freebsd-hackers@freebsd.org" , Ryan Stone , FreeBSD Current , AndreOppermann X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Dec 2012 19:28:44 -0000 On Wednesday, December 05, 2012 6:51:17 pm Damien Fleuriot wrote: > > On 5 Dec 2012, at 18:39, Warner Losh wrote: > > > > > On Dec 5, 2012, at 9:42 AM, John Baldwin wrote: > > > >> On Tuesday, December 04, 2012 2:41:32 pm Ryan Stone wrote: > >>> On Tue, Dec 4, 2012 at 10:52 AM, John Baldwin wrote: > >>> > >>>> Hmm, I certainly see the module directories being built in parallel. Some > >>>> of > >>>> the make jobs may not be as obvious since links are silent (no output > >>>> unless > >>>> there is an error). > >>>> > >>>> > >>> This is definitely not the behaviour that I see trying to build any version > >>> of FreeBSD. I see the same behaviour as Andre: the depend and all targets > >>> both iterate through the module directories sequentially. It never builds > >>> two module subdirectories concurrently. > >> > >> Hmm, I think I was confused by seeing kernel builds intermingle with the > >> associated modules. sys/modules/Makefile uses bsd.subdir.mk. I think I see > >> similar things in world builds where I will see parallel builds of bin vs sbin > >> vs usr.bin vs usr.sbin, but within each of those directories the builds go > >> sequentially. I think you would need to change bsd.subdir.mk if you want to > >> fix this. > > > > The builds are in parallel, just that the parallelism is low because it is only parallel within the module being built. Would love to see a fix. > > > > Warner > > > > All trolling aside, I believe an awesome fix to be setting module override in /etc/make.conf to only build the 4-5 specific modules one needs. > > To be honest I think this configuration tweak should be advertised a bit more as it definitely speeds up kernel builds. > > I would be happy to check if this is advertised in the handbook in the "rebuilding kernel" section and enhance its visibility if required. > > I can provide en_US and fr_FR. Better than doing it in /etc/make.conf (or /etc/src.conf) is doing it direclty in the kernel config file itself via makeoptions MODULES_OVERRIDE="foo" You can use multiple of these (with +=) in a config file as well. -- John Baldwin