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.
-Stefan
> [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