lkml.org 
[lkml]   [2003]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: DVB Include files
On Wed, 25 June 2003 22:09:31 +0200, Marcus Metzler wrote:
> =?iso-8859-1?Q?J=F6rn?= Engel writes:
> > On Wed, 25 June 2003 20:43:23 +0200, Marcus Metzler wrote:
> > > Christoph Hellwig writes:
> > > > On Wed, Jun 25, 2003 at 08:09:51PM +0200, Marcus Metzler wrote:
> > > > > > If the structures change incompatibly you're fucked anyway. Better
> > > > >
> > > > > Not necessarily, e.g. changing
> > > > >
> > > > > #define AUDIO_SET_ATTRIBUTES _IOW('o', 17, audio_attributes_t)
> > > > > #define AUDIO_SET_KARAOKE _IOW('o', 18, audio_karaoke_t)
> > > > >
> > > > > to
> > > > >
> > > > > #define AUDIO_SET_ATTRIBUTES _IOW('o', 47, audio_attributes_t)
> > > > > #define AUDIO_SET_KARAOKE _IOW('o', 48, audio_karaoke_t)
> > > > >
> > > > > or
> > > >
> > > > In that case yes, you are screwed. Your ABI just changed incompatibly.
> > >
> > > Not if you recompile.
> >
> > Isn't the point of an application _binary_ interface, that you don't
> > have to recompile?
>
> You don't need headers for binaries either, so what's your point.

So you don't recompile, but you still changed the magic ioctl numbers
from 17 to 47 and from 18 to 48. Old binaries don't work any more,
even though the same semantics are still present. That is an
incompatible change in my book.

Worse if there is a new semantic for 17 or 18, in that case the old
binaries may break randomly, depending on kernel version.

Jörn

--
Beware of bugs in the above code; I have only proved it correct, but
not tried it.
-- Donald Knuth
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:36    [W:0.084 / U:0.848 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site