Re: DVB Include files

Marcus Metzler (mocm@metzlerbros.de)
Wed, 25 Jun 2003 22:48:36 +0200 (CEST)


Jörn Engel writes:
> On Wed, 25 June 2003 22:09:31 +0200, Marcus Metzler wrote:
> > Jörn 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.

That was kind of the point. If I have to check and copy the includes
all the time I may run into trouble because of such changes. Whereas
without that, I only have to recompile. I don't have to check each and
evry possible place where old headers may be, which may even be
different for every distribution.

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

I was never talking about binaries. Of course, binaries break and you
won't make such radical changes in your drivers. This was only an
example.

The problem with this entire thread was that Christoph was trying to
make a point, and I was only trying to make sure that I don't get
emails complaining about how my sources won't compile with the kernel
drivers (not that I would ever use those).

Marcus

-- 
/--------------------------------------------------------------------\
| Dr. Marcus O.C. Metzler        |                                   |
|--------------------------------|-----------------------------------|
| mocm@metzlerbros.de            | http://www.metzlerbros.de/        |
\--------------------------------------------------------------------/

- 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/