The Novell Partner Linux Driver Process
Posted May 19, 2006 7:47 UTC (Fri) by tzafrir
Parent article: The Novell Partner Linux Driver Process
It should be interesting to compare this "breakthrough" to the "kernel interface numbers" of Debian kernel packages numbers. I'll describe here the system of Debian Stable. I figure SuSE must have something similar as they have so many module sources packages.
The version name of the current kernel images of Debian Stable are 2.4.27-3-<configname> and 2.6.8-3-<configname> . <configname> is e.g. 386, 686 or k7-smp .
This is not the thir revision of the 2.4.27 kernel package or the 2.6.8 kernel package. Actually current revision number os something in the lines of 16.sarge2 . "3" here is a sort of "kernel ABI version number". It changes if a change in the kernel broke its interface to userspace or to external modules.
There are numerous "foo-source" packages from which you can build (normally using m-a: modules-assistant) a package called foo-modules-<kernelver> . That package include the modules as installed under /lib/modules/<kernelver> .
Thus as long as the ABI is not broken, old modules keep working. If someone noticed that a patch breaks certain userspace/modules, it may require bumping up the "kernel ABI version number". Now the new kernel will have a different version string (e.g: 2.6.8-4-386 instead of 2.6.8-3-386) . Existing module packages will simply not load. They will have to be rebuilt with the new kernel's headers.
So mechanics for "stable kernel ABI" for a distro are already there. Naturally actually testing that a new kernel update does not break all the existing devices requires some work. And work doesn't come free...
to post comments)