Hacking modversions
Michael A. Peters
mpeters at mac.com
Wed Mar 2 08:42:34 UTC 2005
On 03/01/2005 10:43:58 AM, Mike Hearn wrote:
>
> This solves the following problem:
>
> Bill sets up a Linux system for Sally. She does a "yum upgrade"
> because
> she knows it's important to stay up to date to be secure. The kernel
> is
> changed, and as a result various things break even though the update
> was
> fixing a race condition in a syscall implementation. She does not
> know how to fix it.
There's a better solution.
It involves having a compiler on the system.
kernel modules that are not part of the kernel proper should have their
source in somewhere, like /usr/src/bizarro/modules (or whatever ;)
A text file - /etc/bizarro.txt contains the names of these modules.
An init script tests for the existince of the modules in the running
kernel module tree. If any are not found, it links the module for the
running kernel and put it where it goes.
In this way - when you update the kernel, your madwifi (or whatever)
driver gets updated for the new running kernel the first time you boot
into the new kernel.
I've seen this done before - I think with a mpeg2 decoder card - and it
actually works, most of the time. When it doesn't work, it's because
the kernel changed in such a way that the module broke - and nothing
other than update from the module vendor will fix that.
--
Michael A. Peters
http://mpeters.us/
More information about the fedora-devel-list
mailing list