Understanding kernel abi bumps for Ubuntu

Stefan Bader stefan.bader at canonical.com
Wed Sep 16 08:38:04 UTC 2009

Luis R. Rodriguez wrote:
> I'd like to further understand the reasoning for kernel ABI bumps for
> Ubuntu. From what I gather from the documentation [1] this is to keep
> binary compatibility, so that if a package is built on an older kernel
> we know when a newer kernel introduced _something_ which would make
> the old binary package not work on a kernel with a newer ABI. Does
> that sum it up?
> If so I'd like to know if someone can elaborate on what could be that
> _something_.

Something comes down to modified structures (used as arguments in exported 
function) and removal of exported functions. The target really are the 
externally build modules and not the userspace.

> I run old userspace on newer kernels all the time, and I don't see any
> issues upgrading, nor do I see a reason for old userspace to not work
> on newer kernels. In fact when newer kernels break old userspace that
> is a bug. An exception that I can think of is when we document
> something old for removal on
> Documentation/feature-removal-schedule.txt and then remove it from a
> new kernel. But that's an exception and these exceptions get wide
> review prior to removal.
> Another change which could affect userspace is a change in the kernel
> configuration used. A clear example here is disabling
> CONFIG_WIRELESS_EXT which you can now do. This would mean you *do*
> need new userspace utilities to allow you to use nl80211. But
> distributions won't be disabling this for a long time, so
> wireless-extensions will always be available.

I had cases where changes to /sys made live a bit harder for user-space and we 
were/are expecting some potential issues with wireless and the move to the crda 
in user-space. I had some problems the opposite way after pulling in the x--org 
edgers testing code and after that being unable to go back to a non-kms kernel. 
But you could say that is all problems in user-space and those won't and cannot 
be related to the ABI number.

> When someone tells me they cannot upgrade their kernel due to old
> tools, I consider this an excuse, I'd like to know if there are real
> examples you come up with which do not fit in the above mentioned
> exceptions.

Before most (if not all) of the external modules/drivers where DKMSed you had 
troubles when using a newer (in that case the ABI number) kernel while the 
external modules were not available for that version. That way you could loose 
your gui but DKMS helps a lot there.


> [1] https://help.ubuntu.com/community/Kernel/Compile
>   Luis


When all other means of communication fail, try words!

More information about the kernel-team mailing list