summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_irq.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2011-07-25 14:57:41 -0700
committerKeith Packard <keithp@keithp.com>2011-07-25 14:57:41 -0700
commit887a82ee80b42bb14ba70f8138292023d5040b08 (patch)
tree4a3c9fc0ddbdf9b07fbd260f4e013423ec1ce1f6 /drivers/gpu/drm/i915/i915_irq.c
parentdf7976797fa9af161690dbf4dee81ed92cdc150f (diff)
parenta65e34c79c88895766ab1f8a5afa451eed26622b (diff)
Merge branch 'drm-intel-fixes' into drm-intel-next
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)
struct drm_mode_config *mode_config = &dev->mode_config;
struct intel_encoder *encoder;
+ mutex_lock(&mode_config->mutex);
DRM_DEBUG_KMS("running encoder hotplug functions\n");
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)
/* Just fire off a uevent and let userspace tell us what to do */
drm_helper_hpd_irq_event(dev);
+
+ mutex_unlock(&mode_config->mutex);
}
static void i915_handle_rps_change(struct drm_device *dev)