summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm/i915_irq.c
diff options
context:
space:
mode:
authorOwain Ainsworth <oga@cvs.openbsd.org>2008-11-04 00:22:13 +0000
committerOwain Ainsworth <oga@cvs.openbsd.org>2008-11-04 00:22:13 +0000
commitd959cbfc96fc73f0010f4cedd6994ea96841ceb1 (patch)
tree1d8d5de48cc771eb25bdb303d664a76cba8464ad /sys/dev/pci/drm/i915_irq.c
parent763289fca04b799b0d71b39173f0d208ec7e0573 (diff)
Hold the drm lock around all things that touch the ringbuffer.
Not strictly needed in the non-gem case, but it will be needed then, and doesn't hurt now. From Eric Anholt at intel.
Diffstat (limited to 'sys/dev/pci/drm/i915_irq.c')
-rw-r--r--sys/dev/pci/drm/i915_irq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/pci/drm/i915_irq.c b/sys/dev/pci/drm/i915_irq.c
index 4ad4824228a..d8e4c3a3921 100644
--- a/sys/dev/pci/drm/i915_irq.c
+++ b/sys/dev/pci/drm/i915_irq.c
@@ -504,7 +504,9 @@ int i915_irq_emit(struct drm_device *dev, void *data,
return EINVAL;
}
+ DRM_LOCK();
result = i915_emit_irq(dev);
+ DRM_UNLOCK();
if (DRM_COPY_TO_USER(emit->irq_seq, &result, sizeof(int))) {
DRM_ERROR("copy_to_user\n");