Re: Binary compatability is about ADMINISTRATION!

Jeffrey Hutzelman (jhutz+@cmu.edu)
Wed, 24 Feb 1999 10:38:53 -0500 (EST)


> Monty was complaining about a binary compatability problem which was
> INTRODUCED in the "stable" 2.0.x series, supposedly for PRODUCTION
> use! Nobody allows such careless changes in production code. This
> wasn't a 2.1.x developer's kernel. This was supposed to be a stable
> release, a relatively minor upgrade to the previous release. The changes
> should NOT have caused binary incompatabilities, but they DID. That's
> why Monty was complaining about the carelessness here; it's the sort of
> thing that can destroy all the confidence in Linux that has taken years to
> build, and once the confidence is gone, it's GONE. This isn't a small or
> inconsequential matter; it could affect mainstream Linux acceptance for
> years to come, possibly FOREVER. If we want Linux to suceed, this sort
> of thing cannot be taken lightly.

I know this is an old thread, but I feel compelled to add a few comments.

First, I agree with what I've quoted above - if/when it becomes necessary
to break binary compatibility, you do so. However, there should be a
good reason, and the more public the interface, the better the reason
must be. Certainly we should not expect incompatible interface changes
between applications and the kernel in a production kernel series,
especially one that is late in its life.

Second, I want to say a bit about the problem with AFS. What we have
is people like Derek Atkins and myself, who are trying to make Linux
a viable choice for users in an environment in which, over many years,
AFS has become an essential part of life, and (IMHO), for good reason. Unfortunately for us, it is a commercial product NOT OWNED BY US, which
means we can't give the source away, however much we want to. So, our
choices boil down to (1) move our entire world away from AFS, which is
both undesirable and infeasible, (2) give up on Linux, which is equally undesirable, or (3) attempt to support a binary-only module.

I'd like to ask people to please try to understand the situation we're
in. Don't make the mistake of transforming distaste for proprietary
software into hate or spite towards people who want or need to use
that software. And especially don't transform it into hate towards
people like Derek Atkins and myself, who have been lucky enough to be
in a position to make that software work on a free platform like Linux.
I'm sitting in front of a Linux machine now, and I support something
like a couple hundred more (an exact number is impossible - it is
growing literally every day), in large part because several years ago
Derek went to the effort of porting AFS.

That said, I'd like to point out that AFS isn't really the issue here,
anyway. Since I must support a binary-only module, I can deal with
having to rebuild it every time a new kernel is released. One thing
I can't deal with, however, is changes that break compatibility with
application binaries. Such changes require that I (and many others) not
only recompile, but keep multiple versions around for people with various
different kernels. This appears to be the kind of problem that Monty
ran into, and it clearly does _not_ affect only binary-only software.
Just because you have source for something does not mean that you want
to rebuild it all the time.

-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/