[PATCH 2/6] wrap-ctx-in-noop

Chris Wilson chris at chris-wilson.co.uk
Wed Jun 13 17:56:42 UTC 2018


---
 drivers/gpu/drm/i915/intel_ringbuffer.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 4a9f44c61edd..67ddb839cfa6 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -1514,7 +1514,7 @@ static inline int mi_set_context(struct i915_request *rq, u32 flags)
 		GEM_BUG_ON(flags & MI_RESTORE_INHIBIT);
 		flags &= ~MI_FORCE_RESTORE;
 		force_restore = true;
-		len += 2;
+		len += 4;
 	}
 
 	cs = intel_ring_begin(rq, len);
@@ -1553,11 +1553,13 @@ static inline int mi_set_context(struct i915_request *rq, u32 flags)
 		 * never use the kernel_context state; it is merely a
 		 * placeholder we use to flush other contexts.
 		 */
+		*cs++ = MI_NOOP;
 		*cs++ = MI_SET_CONTEXT;
 		*cs++ = i915_ggtt_offset(to_intel_context(i915->kernel_context,
 							  engine)->state) |
 			flags |
 			MI_RESTORE_INHIBIT;
+		*cs++ = MI_NOOP;
 	}
 
 	*cs++ = MI_NOOP;
-- 
2.17.1



More information about the Intel-gfx-trybot mailing list