summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2017-11-09 14:34:20 +0100
committerNicolai Hähnle <[email protected]>2017-11-20 18:15:07 +0100
commit764bd6ef96d5a3247f18c0016d57c95edd9d4102 (patch)
tree1efe2b4543cdcde817eddf4c5d19fa39427feeb3 /src/mesa/state_tracker
parent2d8b82baaad43a41d076a5273ac0de3c03cc5a55 (diff)
st/mesa: use asynchronous flushes in st_finish
With threaded gallium, the driver may currently be running in another thread. In that case, we will execute all remaining commands in that thread instead of syncing, which should be better for cache locality. Reviewed-by: Andres Rodriguez <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_cb_flush.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_cb_flush.c b/src/mesa/state_tracker/st_cb_flush.c
index c8452d0e6f7..14bfd5a4684 100644
--- a/src/mesa/state_tracker/st_cb_flush.c
+++ b/src/mesa/state_tracker/st_cb_flush.c
@@ -63,7 +63,7 @@ void st_finish( struct st_context *st )
{
struct pipe_fence_handle *fence = NULL;
- st_flush(st, &fence, 0);
+ st_flush(st, &fence, PIPE_FLUSH_ASYNC | PIPE_FLUSH_HINT_FINISH);
if(fence) {
st->pipe->screen->fence_finish(st->pipe->screen, NULL, fence,