aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/i915_irq.c')
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 23d1ae67d279..7ef3e8b6864d 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -306,6 +306,7 @@ static void i915_hotplug_work_func(struct work_struct *work)
306 struct drm_mode_config *mode_config = &dev->mode_config; 306 struct drm_mode_config *mode_config = &dev->mode_config;
307 struct intel_encoder *encoder; 307 struct intel_encoder *encoder;
308 308
309 mutex_lock(&mode_config->mutex);
309 DRM_DEBUG_KMS("running encoder hotplug functions\n"); 310 DRM_DEBUG_KMS("running encoder hotplug functions\n");
310 311
311 list_for_each_entry(encoder, &mode_config->encoder_list, base.head) 312 list_for_each_entry(encoder, &mode_config->encoder_list, base.head)
@@ -314,6 +315,8 @@ static void i915_hotplug_work_func(struct work_struct *work)
314 315
315 /* Just fire off a uevent and let userspace tell us what to do */ 316 /* Just fire off a uevent and let userspace tell us what to do */
316 drm_helper_hpd_irq_event(dev); 317 drm_helper_hpd_irq_event(dev);
318
319 mutex_unlock(&mode_config->mutex);
317} 320}
318 321
319static void i915_handle_rps_change(struct drm_device *dev) 322static void i915_handle_rps_change(struct drm_device *dev)