Просмотр исходного кода

drm/i915: Unroll wrapping of the ringbuffer.

The tail is quadword aligned, so we can add two MI_NOOP as a time.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Eric Anholt <eric@anholt.net>
Chris Wilson 15 лет назад
Родитель
Сommit
1741dd4aa7
1 измененных файлов с 4 добавлено и 2 удалено
  1. 4 2
      drivers/gpu/drm/i915/intel_ringbuffer.c

+ 4 - 2
drivers/gpu/drm/i915/intel_ringbuffer.c

@@ -682,9 +682,11 @@ int intel_wrap_ring_buffer(struct drm_device *dev,
 	}
 
 	virt = (unsigned int *)(ring->virtual_start + ring->tail);
-	rem /= 4;
-	while (rem--)
+	rem /= 8;
+	while (rem--) {
 		*virt++ = MI_NOOP;
+		*virt++ = MI_NOOP;
+	}
 
 	ring->tail = 0;
 	ring->space = ring->head - 8;