]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/amd/display: Remove drm_modeset_lock in MST code
authorJerry Zuo <Jerry.Zuo@amd.com>
Thu, 28 Sep 2017 20:58:32 +0000 (16:58 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Sat, 21 Oct 2017 20:46:50 +0000 (16:46 -0400)
Locks are no longer needed since the drm framework takes care of
correct locking.

Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Jerry Zuo <Jerry.Zuo@amd.com>
Reviewed-by: Harry Wentland <Harry.Wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c

index 382f499cb60dd6b8d6a6b9dfa306d95dfcb39787..3b05da7a90e867f4ddb7cd03a40c6c914cdce285 100644 (file)
@@ -287,9 +287,10 @@ dm_dp_add_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
        struct amdgpu_device *adev = dev->dev_private;
        struct amdgpu_dm_connector *aconnector;
        struct drm_connector *connector;
+       struct drm_connector_list_iter conn_iter;
 
-       drm_modeset_lock(&dev->mode_config.connection_mutex, NULL);
-       list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
+       drm_connector_list_iter_begin(dev, &conn_iter);
+       drm_for_each_connector_iter(connector, &conn_iter) {
                aconnector = to_amdgpu_dm_connector(connector);
                if (aconnector->mst_port == master
                                && !aconnector->port) {
@@ -299,11 +300,11 @@ dm_dp_add_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
                        aconnector->port = port;
                        drm_mode_connector_set_path_property(connector, pathprop);
 
-                       drm_modeset_unlock(&dev->mode_config.connection_mutex);
+                       drm_connector_list_iter_end(&conn_iter);
                        return &aconnector->base;
                }
        }
-       drm_modeset_unlock(&dev->mode_config.connection_mutex);
+       drm_connector_list_iter_end(&conn_iter);
 
        aconnector = kzalloc(sizeof(*aconnector), GFP_KERNEL);
        if (!aconnector)
@@ -398,14 +399,11 @@ static void dm_dp_mst_register_connector(struct drm_connector *connector)
        struct drm_device *dev = connector->dev;
        struct amdgpu_device *adev = dev->dev_private;
 
-       drm_modeset_lock_all(dev);
        if (adev->mode_info.rfbdev)
                drm_fb_helper_add_one_connector(&adev->mode_info.rfbdev->helper, connector);
        else
                DRM_ERROR("adev->mode_info.rfbdev is NULL\n");
 
-       drm_modeset_unlock_all(dev);
-
        drm_connector_register(connector);
 
 }