drm: Implement drm_modeset_lock_all_ctx()
authorThierry Reding <treding@nvidia.com>
Wed, 2 Dec 2015 16:50:03 +0000 (17:50 +0100)
committerStefan Agner <stefan@agner.ch>
Thu, 11 Feb 2016 21:49:03 +0000 (13:49 -0800)
commit9fd1ad7ca272f9dea8db2248316cb94b1f509fad
tree38e46cebf644d06614505f17dfc3e1e9a0140393
parent2b1bae289ae66ccbd7e89ce9d9da7a24cc7e27b5
drm: Implement drm_modeset_lock_all_ctx()

This function is like drm_modeset_lock_all(), but it takes the lock
acquisition context as a parameter rather than storing it in the DRM
device's mode_config structure.

Implement drm_modeset_{,un}lock_all() in terms of the new function for
better code reuse, and add a note to the kerneldoc that new code should
use the new functions.

v2: improve kerneldoc
v4: rename drm_modeset_lock_all_crtcs() to drm_modeset_lock_all_ctx()
    and take mode_config's .connection_mutex instead of .mutex lock to
    avoid lock inversion (Daniel Vetter), use drm_modeset_drop_locks()
    which is now the equivalent of drm_modeset_unlock_all_ctx()
v5: do not take the dev->mode_config.connection_mutex in
    drm_atomic_legacy_backoff() since drm_modeset_lock_all_ctx()
    already keeps it, enhance kerneldoc for drm_modeset_lock_all_ctx()
    (Daniel Vetter)

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1449075005-13937-1-git-send-email-thierry.reding@gmail.com
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/drm_atomic.c
drivers/gpu/drm/drm_modeset_lock.c
include/drm/drm_modeset_lock.h