LWN.net Logo

The Novell Partner Linux Driver Process

The Novell Partner Linux Driver Process

Posted May 19, 2006 7:47 UTC (Fri) by tzafrir (subscriber, #11501)
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...


(Log in to post comments)

The Novell Partner Linux Driver Process

Posted May 19, 2006 14:09 UTC (Fri) by wilck (subscriber, #29844) [Link]

RedHat is handling ABI version numbers similarly (first number after kernel version denotes major changes, additional numbers are added to denote pure bug fixes that don't affect any interfaces).

Novell/SuSE have not handled kernel version numbers that consequently in the past, AFAICT.

The new Novell process, apart from their promise to reflect ABI changes properly, also warrants that update module packages (foo-modules-<kernelver> in your example) will be available from vendors for drivers that adhere to the model, so that no manual download and no recompilation will be necessary for users after a kernel update. To my understanding, vendors participating in the process must commit themselves to provide such packages in due time after kernel updates have been released.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds