From 1318cb4c5adcdd6c5dbe15caa4a59c6c8ba8279f Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 14 Feb 2022 05:21:15 +1000 Subject: [PATCH] lavapipe: pass partial results flags through. Reviewed-by: Mike Blumenkrantz Reviewed-by: Roland Scheidegger Part-of: --- src/gallium/frontends/lavapipe/lvp_execute.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/frontends/lavapipe/lvp_execute.c b/src/gallium/frontends/lavapipe/lvp_execute.c index 93572a47de6..ad58cdeed42 100644 --- a/src/gallium/frontends/lavapipe/lvp_execute.c +++ b/src/gallium/frontends/lavapipe/lvp_execute.c @@ -2994,6 +2994,9 @@ static void handle_copy_query_pool_results(struct vk_cmd_queue_entry *cmd, struct vk_cmd_copy_query_pool_results *copycmd = &cmd->u.copy_query_pool_results; LVP_FROM_HANDLE(lvp_query_pool, pool, copycmd->query_pool); enum pipe_query_flags flags = (copycmd->flags & VK_QUERY_RESULT_WAIT_BIT) ? PIPE_QUERY_WAIT : 0; + + if (copycmd->flags & VK_QUERY_RESULT_PARTIAL_BIT) + flags |= PIPE_QUERY_PARTIAL; unsigned result_size = copycmd->flags & VK_QUERY_RESULT_64_BIT ? 8 : 4; for (unsigned i = copycmd->first_query; i < copycmd->first_query + copycmd->query_count; i++) { unsigned offset = copycmd->dst_offset + lvp_buffer_from_handle(copycmd->dst_buffer)->offset + (copycmd->stride * (i - copycmd->first_query));