drm/nouveau/kms: take mode_config mutex in connector hotplug path
authorBen Skeggs <bskeggs@redhat.com>
Thu, 7 Jan 2016 22:56:51 +0000 (08:56 +1000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Mar 2016 23:07:20 +0000 (15:07 -0800)
commit 0a882cadbc63fd2da3994af7115b4ada2fcbd638 upstream.

fdo#93634

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/nouveau/nouveau_connector.c

index 2e7cbe933533c97b9a211827d5005d2adc282496..2a5ed746035458dbd4f7db04490222acc81b950f 100644 (file)
@@ -969,10 +969,13 @@ nouveau_connector_hotplug(struct nvif_notify *notify)
 
                NV_DEBUG(drm, "%splugged %s\n", plugged ? "" : "un", name);
 
+               mutex_lock(&drm->dev->mode_config.mutex);
                if (plugged)
                        drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON);
                else
                        drm_helper_connector_dpms(connector, DRM_MODE_DPMS_OFF);
+               mutex_unlock(&drm->dev->mode_config.mutex);
+
                drm_helper_hpd_irq_event(connector->dev);
        }