Thread (126 messages) 126 messages, 19 authors, 2024-08-16

Re: [MAINTAINERS SUMMIT] Device Passthrough Considered Harmful?

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2024-07-25 20:07:24
Also in: linux-cxl, linux-rdma

Hi Jason,

On Thu, Jul 25, 2024 at 04:43:14PM -0300, Jason Gunthorpe wrote:
On Thu, Jul 25, 2024 at 10:31:25PM +0300, Laurent Pinchart wrote:
quoted
I don't think those are necessarily relevant examples, as far as device
pass-through goes. Vendors have many times reverted to proprietary ways,
and they still do, at least in the areas of the kernel I'm most active
in. I've seen first hand a large SoC vendor very close to opening a
significant part of their camera stack and changing their mind at the
last minute when they heard they could possibly merge their code through
a different subsystem with a pass-through blank cheque.
If someone came with a fully open source framework for (say) some
camera,
We have such a framework, it's called libcamera :-) Multiple vendors are
already collaborating.
with a passthrough kernel driver design, would you reject it
soley because it is passthrough based and you are scared that
something else will use it to do something not open source?
It depends what "passthrough kernel driver design" means. If it means
accessing the PCI registers directly from userspace, yes. That's what X
used to do before KMS, and I'm glad it's now a distant past.

If it means a kernel driver that takes the majority of its runtime
parameters from a buffer blob assembled by userspace, while controlling
clocks, power domains and performing basic validation in kernelspace,
then I've already acked multiple drivers with such a design, exactly
because they have open-source userspace that doesn't try to keep many
device features proprietary and usable by closed-source userspace only.
I wouldn't agree with that position, I think denying users useful open
source solutions out of fear is not what Linux should be doing.
-- 
Regards,

Laurent Pinchart
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help