summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-06-21 22:25:08 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2010-06-21 22:25:08 +0100
commit0203cf91b54ee8a7cea8560e559288ee9b6e8554 (patch)
tree6d1330c5ec7d7c45f26f7577e367c170ddb7a341
parent5107b6fa26ecfdbdd60b869a86765c9c484db3a2 (diff)
Do not clear need_mi_flush within the batch.
This is a situation that should not be possible, need_mi_flush being true but the list of pending flush pixmaps being clear. However, an earlier bug in doing just that revealed this minor bug. So for correctness, be careful not to clear need_mi_flush without emitting a MI_FLUSH. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/i830_batchbuffer.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/i830_batchbuffer.c b/src/i830_batchbuffer.c
index b2ee639f..2b7227ba 100644
--- a/src/i830_batchbuffer.c
+++ b/src/i830_batchbuffer.c
@@ -223,7 +223,7 @@ void intel_batch_submit(ScrnInfoPtr scrn, int flush)
list_del(&entry->batch);
}
- intel->need_mi_flush = !list_is_empty(&intel->flush_pixmaps);
+ intel->need_mi_flush |= !list_is_empty(&intel->flush_pixmaps);
while (!list_is_empty(&intel->flush_pixmaps))
list_del(intel->flush_pixmaps.next);