Changing kernel API / Breaking VirtualBox - update criteria violation?

Matthew Garrett mjg59 at srcf.ucam.org
Tue Nov 22 21:54:41 UTC 2011


On Tue, Nov 22, 2011 at 10:46:17PM +0100, Thomas Moschny wrote:
> 2011/11/22 Matthew Garrett <mjg at redhat.com>:
> > If you interpret "The ABI" as "Any property of the binary that another
> > package could conceivably depend on" then your position makes sense. But
> > since nobody would interpret it that way, the obvious conclusion is that
> > "The ABI" means "The supported ABI". Attempting to codify this more
> > precisely would just encourage language lawyering, which is exactly what
> > we were trying to avoid when we generated this policy. Use common sense.
> 
> If you replace "conveivably" by "commonly" or "reasonably" than I'd
> say more people than "nobody" would expect the updates policy to
> prevent such changes.

Well, yes, if you change what I said then you get a different conclusion 
:)

> Of course I buy the argument that we as the Fedora community don't
> have enough resources to backport each and every kernel bugfix. That
> is a completely valid point, and if the outcome is that under these
> constraints things are how they are and the ABI changes, than this is
> ok.

Even if we did backport each and every kernel bugfix, the module ABI 
would change. Nobody promises a stable module ABI - even RHEL only 
provides it for a small subset of the entire ABI. It exposes too much of 
the kernel internals to make it possible.

> That said, you are still obliged by the updates policy to think about
> the effects of an update (of each update) and weigh pros and cons like
> every other packager. Saying yes we did that long time ago occurs a
> bit rude to me.

Misuses of the package just aren't on the set of things that should be 
considered. If a user is doing something unsupportable then we don't 
need to consider that user's inconvenience when deciding whether to push 
the update or not. So an inability to compile virtualbox is entirely 
irrelevant. Like I said, we could actively enforce this by not shipping 
the headers and changing the module loader to reject out of tree module 
builds - but there doesn't seem to be any real advantage to doing that.

There are completely valid reasons to complain about the kernel's 
adherence to the updates policy, and things like driver breakage are 
definitely on that list. I'm certainly not happy that updates 
occasionally break people's wifi, for instance. Anger at that is 
entirely justifiable. But anger at an inability to build virtualbox 
isn't.

-- 
Matthew Garrett | mjg59 at srcf.ucam.org


More information about the devel mailing list