[PATCH] drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count

Chris Wilson chris at chris-wilson.co.uk
Fri Jan 24 18:39:26 UTC 2020


Quoting Thomas Hellström (VMware) (2020-01-24 13:37:47)
> On 1/24/20 2:01 PM, Chris Wilson wrote:
> > Since drm_global_mutex is a true global mutex across devices, we don't
> > want to acquire it unless absolutely necessary. For maintaining the
> > device local open_count, we can use atomic operations on the counter
> > itself, except when making the transition to/from 0. Here, we tackle the
> > easy portion of delaying acquiring the drm_global_mutex for the final
> > release by using atomic_dec_and_mutex_lock(), leaving the global
> > serialisation across the device opens.
> >
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Thomas Hellström (VMware) <thomas_os at shipmail.org>
> 
> For the series:
> 
> Reviewed-by: Thomas Hellström <thellstrom at vmware.com>

Now being opt-in, it is fairly limited in scope and will not randomly
break others (touch wood) and the close() racing in BAT didn't throw
anything up, so pushed to drm-misc-next. Thanks for the review and
suggestions,

Next task is to suggest others might like to use it as well.
-Chris


More information about the dri-devel mailing list