Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Feb 2012 17:14:24 -0800
From:      Doug Barton <dougb@FreeBSD.org>
To:        matt <sendtomatt@gmail.com>
Cc:        rank1seeker@gmail.com, hackers@freebsd.org
Subject:   Re: 8 to 9: Kernel modularization -- did it change?
Message-ID:  <4F3EFB70.5000102@FreeBSD.org>
In-Reply-To: <4F3EDEBC.7040703@gmail.com>
References:  <CAOjFWZ6WM1bLEwaBiUE50Gj4MrwxefDWFb85ecRtYkSDuZ0erg@mail.gmail.com> <mailpost.1329495670.7246668.67851.mailing.freebsd.hackers@FreeBSD.cs.nctu.edu.tw> <4F3E8225.9030501@FreeBSD.org> <E1RyRKJ-000Ioa-Ec@hans3> <4F3E8C26.3080900@FreeBSD.org> <E1RyRq0-000Iqy-3l@hans3> <4F3EA5F2.9070804@gmail.com> <E1RyTZo-000J0R-0Y@hans3> <4F3EAE5F.6070903@gmail.com> <E1RyUv6-000J5e-0E@hans3> <20120217.220802.988.2@DOMY-PC> <4F3EDEBC.7040703@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 02/17/2012 15:11, matt wrote:
> We have a modular kernel. It makes best-practices-sense to keep the
> kernel true to what's required to boot and initialize the hardware
> required to come up multiuser. I am actually against having sound in
> there at all.

I think the question is not, "What should be in the kernel?" but rather
"What should be on by default?" *How* those things are provided is a
different question.

One could argue that an intelligent installer combined with a more
modular kernel would be the right answer.

> However, as a compromise, if it must be in there, then put it in
> loader.conf and not the kernel.

I keep hoping that if I repeat this enough times that people will get
the word. :)  Because loading modules through loader.conf is
veeeeeerrrrryyyyyy sssssllllloooooowwwwww I added an rc.d script called
kld that will load the specified modules after disks are mounted. This
is at least an order of magnitude faster. Look for kld_list in
rc.conf(5) if you want the details, but the short version is that you
just do something like, kld_list="umass coretemp ichwd linux nvidia".
This is in all the -stable branches (including 7), is already in 9.0,
and will be in 8.3.

Obviously you have to have everything in kernel and/or loader.conf
that's necessary to get your local disks available, and the system to
the point where it can start running rc. But everything else can go in
kld_list.


hth,

Doug

-- 

	It's always a long day; 86400 doesn't fit into a short.

	Breadth of IT experience, and depth of knowledge in the DNS.
	Yours for the right price.  :)  http://SupersetSolutions.com/




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F3EFB70.5000102>