[PlanetCCRMA] Re: Preemptible kernel patch
Fernando Pablo Lopez-Lezcano
nando at ccrma.Stanford.EDU
Sat Nov 2 15:20:03 PST 2002
> The preemptible patch included in the ccrma kernel conflicts with my modem
> driver (hsflinmodem). Is there any way to disable it? ...maybe using the
> source rpms??... or maybe it's time to learn how to compile my own
> kernel... :-(
The only way is to recompile the kernel without that option turned on. It
is not something you can disable at runtime. I should probably expand on
the "rebuild your kernel" section of the planet pages.
I'm working on a new kernel. So far 2.4.20-rc1 is not working rigth. I'm
currently looking at the Jussi Lako's patches, they seem to produce a very
low latency kernel, maybe not up to the latest (seems to derive from
2.4.20-pre4) but well, if it has low latency... it includes a new
scheduler but I think it does not include the preemptible kernel patch.
Let's see, this is what you would need to do (this is from memory, it may
be that some paths or names are slightly off):
- rpm -Uvh the kernel source rpm (not the binary rpm that has the kernel
sources). This will unpack all kernel sources and put the spec file in
the proper place. See the appendix on rebuilding the kernel for a url to
the source rpm.
- cd /usr/src/redhat/SPECS
- rpm -bp kernel-2.4.19-1.ll.spec
(this untars and patches the kernel, does not built it yet)
- cd /usr/src/redhat/BUILD/kernel-2.4.19-1.ll/linux-2.4.19/
- copy the i686 configuration file you want to change:
cp configs/kernel-2.4.19-i686.config .config
- do a "make xconfig", unselect the "preemptible kernel" option, I think
it is in the processor section.
- save the configuration and quite the configurator
- copy back the configuration file to the sources directory:
cp .config /usr/src/redhat/SOURCES/kernel-2.4.19-i686.config
- do the same for the i386 config file (why? you will need to generate
both the i386 kernel and the i686, you need the i386 so that you will
get the source package you will latter need to compile the modem driver.
- you don't need to create the smp kernels, you can edit the spec file and
turn off the build_smp variable. You could also bump the version or
change the postfix so that you do not have the same version as the
planet kernel.
- build the kernels:
rpm -ba kernel-2.4.19-1.ll.spec
rpm -ba --target i686 kernel-2.4.19-1.ll.spec
- install the resulting rpms.....
Of course this is more complicated than just building and installing the
raw kernel. The process is more involved because you are updating the
rpms.
-- Fernando
> Thanks,
> Pato.
> ==========
> make[1]: Entering directory `/home/pdelac/Download/SOURCES/hsflinmodem-
> 5.03.03.L3mbsibeta02101001/modules'
> * Compiling mod_osspec.c
> In file included from mod_osspec.c:51:
> ../modules/osspec/include/oscompat.h:121:2: #error Preemptible kernel option
> (CONFIG_PREEMPT) not yet supported. Reconfigure your kernel without it.
> make[1]: *** [mod_osspec.o] Error 1
> make[1]: Leaving directory `/home/pdelac/Download/SOURCES/hsflinmodem-
> 5.03.03.L3mbsibeta02101001/modules'make: *** [modules] Error 2
More information about the PlanetCCRMA
mailing list