summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_flush.c
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-06-04 12:22:14 +0100
committerJosé Fonseca <jfonseca@vmware.com>2010-06-04 13:05:59 +0100
commitbe5a514d4e526070ff58f12fc3d161b992ff205c (patch)
tree8257c8e20734f0de192508c0251ab41bd3ec25b1 /src/gallium/drivers/llvmpipe/lp_flush.c
parente5a48fcabd361848c74cee63e178fe02f63bcb45 (diff)
llvmpipe: Do unswizzling in parallel when flushing for transfers.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_flush.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_flush.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_flush.c b/src/gallium/drivers/llvmpipe/lp_flush.c
index 884e6238d4c..0cd288bb73a 100644
--- a/src/gallium/drivers/llvmpipe/lp_flush.c
+++ b/src/gallium/drivers/llvmpipe/lp_flush.c
@@ -120,6 +120,13 @@ llvmpipe_flush_resource(struct pipe_context *pipe,
if (do_not_block)
return FALSE;
+ /*
+ * Do the unswizzling in parallel.
+ *
+ * XXX: Don't abuse the PIPE_FLUSH_FRAME flag for this.
+ */
+ flush_flags |= PIPE_FLUSH_FRAME;
+
llvmpipe_flush(pipe, flush_flags, &fence);
if (fence) {