Re: [Regression 5.14] media: dvb userspace api

From: Mauro Carvalho Chehab
Date: Tue Aug 24 2021 - 03:48:08 EST


Em Mon, 23 Aug 2021 09:58:00 -0700
Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> escreveu:

> On Mon, Aug 23, 2021 at 7:59 AM Soeren Moch <smoch@xxxxxx> wrote:
> >
> > Linus,
> >
> > Is what I described directly above the new linux maintenance policy? Or
> > is linux media a private kingdom where the community should keep away?
> > Is this a place where the subsystem maintainer is on a mission to
> > destroy everything instead of maintaining and improving it? Please tell
> > me what I understood wrong here.
>
> So technically, the regression policy for the kernel is purely about
> the ABI - the _binary_ interface. That seems to not have broken - old
> programs continue to work.
>
> We very much try to discourage user space applications from using the
> kernel header files directly - even projects like glibc etc are
> supposed to _copy_ them, not include the kernel headers.

Unfortunately, media APIs aren't part of projects like glibc. Almost all
open source media apps keep their own copies of the uAPI header files.

As far as I'm aware, the "full-feat" API is implemented only by some
modules of VDR. I don't know any other open source application using
such headers.

> Exactly because re-organization and changes to the kernel tree
> shouldn't be something that then causes random problems elsewhere that
> are so hard to test - and synchronize - from the kernel standpoint (or
> from the standpoint of the other end).
>
> That clearly doesn't seem to be the case in this situation. Which is
> annoying as heck.
>
> Mauro: there clearly _are_ users of those header files, and even
> apparently that one old driver out there. And those headers were in
> the 'uapi' directory, so while it is annoying how user space programs
> used them this way, I think it's also not entirely unreasonable.
>
> I have reverted the header file move. But I would also heartily
> recommend that whatever user program includes those headers (VDR -
> anything else?) should take snapshots of these specific kernel
> headers.
>
> I'm not convinced that it makes sense to move the av7110 driver back
> from staging - it may continue to work, but it _is_ old and there is
> no maintenance - and I would certainly suggest that any other
> out-of-tree driver that uses these old interfaces that nothing else
> implements shouldn't do so, considering that nothing else implements
> them.
>
> So the only thing I did was move the header files back, and mark that
> move to be backported to 5.13 stable.

Ok.

Thanks,
Mauro