Mesa (master): i965: Don't PIPE_CONTROL instruction cache flush.

Eric Anholt anholt at kemper.freedesktop.org
Wed May 26 19:15:20 UTC 2010


Module: Mesa
Branch: master
Commit: 8f61114907669b2134fbdc1a794926035486e8df
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8f61114907669b2134fbdc1a794926035486e8df

Author: Eric Anholt <eric at anholt.net>
Date:   Sun May 23 21:00:13 2010 -0700

i965: Don't PIPE_CONTROL instruction cache flush.

This is a workaround for Ironlake errata.  The emit_mi_flush is used
for a few purposes:
1) Flushing write caches for RTT (including blit to texture)
2) Pipe fencing for sync objects
3) Spamming cache flushes to track down cache flush bugs

Spamming cache flushes seems less important than following the docs,
and we should probably do that with a different mechanism than the one
for render cache flushes.

---

 src/mesa/drivers/dri/intel/intel_batchbuffer.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_batchbuffer.c b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
index ca8e344..de51340 100644
--- a/src/mesa/drivers/dri/intel/intel_batchbuffer.c
+++ b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
@@ -278,7 +278,6 @@ intel_batchbuffer_emit_mi_flush(struct intel_batchbuffer *batch)
    if (intel->gen >= 4) {
       BEGIN_BATCH(4);
       OUT_BATCH(_3DSTATE_PIPE_CONTROL |
-		PIPE_CONTROL_INSTRUCTION_FLUSH |
 		PIPE_CONTROL_WRITE_FLUSH |
 		PIPE_CONTROL_NO_WRITE);
       OUT_BATCH(0); /* write address */




More information about the mesa-commit mailing list