Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Feb 2012 17:32:44 +0200
From:      Volodymyr Kostyrko <c.kworr@gmail.com>
To:        Alexander Leidinger <Alexander@Leidinger.net>
Cc:        stable@FreeBSD.org
Subject:   Re: Reducing the need to compile a custom kernel
Message-ID:  <4F35389C.5080007@gmail.com>
In-Reply-To: <20120210145604.Horde.ewjpSpjmRSRPNSH0YRHxgAk@webmail.leidinger.net>
References:  <20120210145604.Horde.ewjpSpjmRSRPNSH0YRHxgAk@webmail.leidinger.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Alexander Leidinger wrote:
> during some big discussions in the last monts on various lists, one of
> the problems was that some people would like to use freebsd-update but
> can't as they are using a custom kernel. With all the kernel modules we
> provide, the need for a custom kernel should be small, but on the other
> hand, we do not provide a small kernel-skeleton where you can load just
> the modules you need.
>
> This should be easy to change. As a first step I took the generic kernel
> and removed all devices which are available as modules, e.g. the USB
> section consists now only of the USB_DEBUG option (so that the module is
> build like with the current generic kernel). I also removed some storage
> drivers which are not available as a module. The rationale is, that I
> can not remove CAM from the kernel config if I let those drivers inside
> (if those drivers are important enough, someone will probably fix the
> problem and add the missing pieces to generate a module).
>
> Such a kernel would cover situations where people compile their own
> kernel because they want to get rid of some unused kernel code (and
> maybe even need the memory this frees up).
>
> The question is, is this enough? Or asked differently, why are you
> compiling a custom kernel in a production environment (so I rule out
> debug options zhich are not enabled in GENERIC)? Are there options which
> you add which you can not add as a module (SW_WATCHDOG comes to my
> mind)? If yes, which ones and how important are they for you?

The list would be too long for  me, that's a sample what I add to my 
MINIMAL after stripping GENERIC:

option DEVICE_POLLING
option BPF_JITTER
option DIRECTIO

option SC_ALT_MOUSE_IMAGE
option SC_MOUSE_CHAR=0x3

option ZERO_COPY_SOCKETS

option SW_WATCHDOG

option ALTQ
option ALTQ_CBQ
option ALTQ_RED
option ALTQ_RIO
option ALTQ_HFSC
option ALTQ_CDNR
option ALTQ_PRIQ
option ALTQ_NOPCC

device atpic
device mptable

I even don't use them on most machines however I prefer to build all 
machines from one kernel config however even this is impossible because 
for example I can't select scheduler by modules.

Some point can be superseded in future for example current work on ULE 
seems promising.

For example, why there are no modules for atpic and mptable? I don't 
need them on most machines but I can't load them at boot time.

-- 
Sphinx of black quartz judge my vow.



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