From: Nicolai Hähnle Date: Thu, 9 Nov 2017 13:34:20 +0000 (+0100) Subject: st/mesa: use asynchronous flushes in st_finish X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=764bd6ef96d5a3247f18c0016d57c95edd9d4102;p=mesa.git 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 Reviewed-by: Marek Olšák --- 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,