On Fri, Apr 24, 2020 at 4:11 AM Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote: > > On Thu, 23 Apr 2020 at 23:51, Peter Collingbourne <pcc@xxxxxxxxxx> wrote: > > > > The render node is required by Android which does not support the legacy > > drmAuth authentication process. > > > > Signed-off-by: Peter Collingbourne <pcc@xxxxxxxxxx> > > --- > > drivers/gpu/drm/pl111/pl111_drv.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > The summary talks about drmAuth, yet exposes a render node. Even > through there's no rendering engine in the HW, as mentioned by Eric. > > AFAICT the only way drmAuth is relevant with pl111 is when you want to > export/import dma bufs. > Although that is handled in core and the artificial DRM_AUTH > restriction has been lifted with commit [1]. > > -Emil > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.7-rc2&id=30a958526d2cc6df38347336a602479d048d92e7 Okay, most likely drmAuth is irrelevant here (I don't know much about it to be honest; I know that Android uses render nodes, so I figured that drmAuth must therefore be the thing that it doesn't use). Sorry for the confusion. Here is a better explanation of why I needed this change. Android has a composer process that opens the primary node and uses DRM_IOCTL_MODE_ATOMIC to switch between frame buffers, and a renderer process (surfaceflinger) that opens the render node, prepares frame buffers and sends them to the composer. One idea for adapting this architecture to devices without render nodes is to have the renderer process open the primary node instead. But this runs into a problem: suppose that the renderer process starts before the composer process. In this case, the kernel makes the renderer the DRM master, so the composer can't change the frame buffer. Render nodes don't have this problem because opening them doesn't affect the master. I considered fixing this by having the composer issue DRM_IOCTL_SET_MASTER, but this requires root privileges. If we require drivers to provide render nodes and control access to the primary node while opening up the render node, we can ensure that only authorized processes can become the master without requiring them to be root. Peter _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel