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

Thomas Hellström (VMware) thomas_os at shipmail.org
Fri Jan 24 20:32:42 UTC 2020


On 1/24/20 7:39 PM, Chris Wilson wrote:
> 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

Thanks. I'll look at doing the same for those drivers I audited.

/Thomas




More information about the dri-devel mailing list