[Exherbo-dev] Handling of kernel modules

Bernd Steinhauser exherbo at bernd-steinhauser.de
Sat May 24 00:53:10 BST 2008


Hi,

ok, we had a small discussion on IRC about this and agreed about a few
things that would be nice to have here:
1. Checking for kernel versions
2. Checking for kernel config options
3. Automatically get/set kernel build and source dir
4. If there are modules generated, build them for all available kernels

In detail:
1.: It should be possible to check if the kernel version is greater or
equal than some version, less or equal than some version or if the
version matches.
Examples:
-	if kernel-linux ge 2.6.25 ; then

2. It should be possible to check if an option is set or not and if it
matches a setting, since not all options are boolean.
Maybe also checking, if something is built as a module could be useful.
-	if kernel-linux config PCI_LEGACY ; then
-	if kernel-linux config_module KVM_AMD ; then

3. and 4.
The idea is, that if a kernel module is build, in most cases you want it
to be built for every installed kernel, so if you boot another kernel,
the modul is there, too. Now since that is not always wanted, there
should be a way to configure, if a kernel should be considered as a
build target. This should be on a per package/per module basis, maybe
with an eselect module (eselect kernel build kernel_name
modulename/packagename {true,false}).
So what would happen, when an exheres builds a module?	

1. Search for available kernels
2. Check for which kernels the module should be built
3. For each kernel build the module
4. For each kernel install the module

Open questions:
- Is there something like the "default" kernel (for example the one
where the symlink in /usr/src points to or the running kernel?)
- In which cases should it be fatal, if a build for one kernel fails?
(For example a failure for the default kernel might be fatal, for a
non-default kernel it might just print a warning, that the build was not
successful.)
- If there are checks for kernel versions, maybe incompatible kernel
versions could be skipped automatically?
"Skipping kernel linux-2.6.24-tuxonice, >=2.6.27 requested."
- Maybe autoskip kernels where config options are not met?
"Skipping kernel linux-2.6.24-tuxonice, CONFIG_PCI_LEGACY deactivated."
+ die if it is the default kernel

Regards,
Bernd




More information about the Exherbo-dev mailing list