[Intel-gfx] [PATCH 03/14] drm: Link directly from drm_master to drm_device
Daniel Vetter
daniel at ffwll.ch
Wed Jun 15 15:45:49 UTC 2016
On Wed, Jun 15, 2016 at 01:50:02PM +0100, Emil Velikov wrote:
> On 14 June 2016 at 19:50, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> > Master-based auth only exists for the legacy/primary drm_minor, hence
> > there can only be one per device. The goal here is to untangle the
> > epic dereference games of minor->master and master->minor which is
> > just massively confusing.
> >
> Good riddance :-)
> Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
>
> Taking this a step further, have you considered:
> - having the master under drm_device, then
> - nuking the drm_file/drm_minor one and adding drm_minor::has_master.
> The last one will be checked before accessing drm_minor::dev::master.
>
> The above should work just fine, right ?
We still need a pointer for the dev->master link. A later patch will
simplify that, but entirely embedding doesn't work: drm_master must be
free-standing, since when you drop_master all the clients authenticated
against you will still be connected to your master. This is to make sure
that they loose their authentication when vt switching to another X
server. When you reacquire master with set_master, all the clients
authenticated against that master are again considered authenticated.
But yes, this will be simplified more.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the Intel-gfx
mailing list