OSDN Git Service

drm: replace drm_modeset_lock_all() in drm_client_modeset_dpms_legacy()
authorJoseph Schulte <joeschulte.js@gmail.com>
Mon, 25 Jan 2021 14:48:15 +0000 (08:48 -0600)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 2 Feb 2021 15:01:40 +0000 (16:01 +0100)
This patch helps complete Use  DRM_MODESET_LOCK_ALL* helpers instead of
boilerplate todo in Documentation/gpu/todo.rst

Signed-off-by: Joseph Schulte <joeschulte.js@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20210125144815.8389-1-joeschulte.js@gmail.com
drivers/gpu/drm/drm_client_modeset.c

index b7e9e1c..ced09c7 100644 (file)
@@ -7,6 +7,7 @@
  * Copyright (c) 2007 Dave Airlie <airlied@linux.ie>
  */
 
+#include "drm/drm_modeset_lock.h"
 #include <linux/module.h>
 #include <linux/mutex.h>
 #include <linux/slab.h>
@@ -1181,9 +1182,11 @@ static void drm_client_modeset_dpms_legacy(struct drm_client_dev *client, int dp
        struct drm_device *dev = client->dev;
        struct drm_connector *connector;
        struct drm_mode_set *modeset;
+       struct drm_modeset_acquire_ctx ctx;
        int j;
+       int ret;
 
-       drm_modeset_lock_all(dev);
+       DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, 0, ret);
        drm_client_for_each_modeset(modeset, client) {
                if (!modeset->crtc->enabled)
                        continue;
@@ -1195,7 +1198,7 @@ static void drm_client_modeset_dpms_legacy(struct drm_client_dev *client, int dp
                                dev->mode_config.dpms_property, dpms_mode);
                }
        }
-       drm_modeset_unlock_all(dev);
+       DRM_MODESET_LOCK_ALL_END(dev, ctx, ret);
 }
 
 /**