summaryrefslogtreecommitdiff
path: root/src
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 /src
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>
Diffstat (limited to 'src')
-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);