Re: [Regression 5.14] media: dvb userspace api

From: Linus Torvalds
Date: Mon Aug 23 2021 - 12:58:30 EST


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.

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.

Linus