[Intel-gfx] [PATCH] drm/i915: small semaphore fix

Ben Widawsky ben at bwidawsk.net
Wed Aug 31 21:47:22 CEST 2011


Assertion + unsigned helps catch potential issues.

>From the docs it is hard to tell if the global GTT flag is actually
needed, but it shouldn't hurt.

Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
---
 drivers/gpu/drm/i915/intel_ringbuffer.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index c30626e..eb1ab0c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -315,12 +315,14 @@ static void render_ring_cleanup(struct intel_ring_buffer *ring)
 }
 
 static void
-update_semaphore(struct intel_ring_buffer *ring, int i, u32 seqno)
+update_semaphore(struct intel_ring_buffer *ring, unsigned int i, u32 seqno)
 {
 	struct drm_device *dev = ring->dev;
 	struct drm_i915_private *dev_priv = dev->dev_private;
 	int id;
 
+	BUG_ON(IS_GEN6(dev) && i > 1);
+
 	/*
 	 * cs -> 1 = vcs, 0 = bcs
 	 * vcs -> 1 = bcs, 0 = cs,
@@ -332,6 +334,7 @@ update_semaphore(struct intel_ring_buffer *ring, int i, u32 seqno)
 
 	intel_ring_emit(ring,
 			MI_SEMAPHORE_MBOX |
+			MI_SEMAPHORE_GLOBAL_GTT |
 			MI_SEMAPHORE_REGISTER |
 			MI_SEMAPHORE_UPDATE);
 	intel_ring_emit(ring, seqno);
-- 
1.7.6.1




More information about the Intel-gfx mailing list