summaryrefslogtreecommitdiff
path: root/src/amd/vulkan/radv_query.c
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2021-08-30 10:31:15 -0400
committerMarge Bot <eric+marge@anholt.net>2021-08-30 19:02:40 +0000
commit90a0556c27c40e3520d645f2512d4596a109c55c (patch)
tree1863cefad156b29c5cca4700c5059912f86e5d49 /src/amd/vulkan/radv_query.c
parent906f7f4296dee343fc86f725eca71cda25054642 (diff)
radv: use pool stride when copying single query results
the specified stride is irrelevant for this case since there's only one result to write Cc: mesa-stable Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12619>
Diffstat (limited to 'src/amd/vulkan/radv_query.c')
-rw-r--r--src/amd/vulkan/radv_query.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_query.c b/src/amd/vulkan/radv_query.c
index b0b8453cf4c..f5353e8dacb 100644
--- a/src/amd/vulkan/radv_query.c
+++ b/src/amd/vulkan/radv_query.c
@@ -854,7 +854,8 @@ radv_query_shader(struct radv_cmd_buffer *cmd_buffer, VkPipeline *pipeline,
old_predicating = cmd_buffer->state.predicating;
cmd_buffer->state.predicating = false;
- struct radv_buffer dst_buffer = {.bo = dst_bo, .offset = dst_offset, .size = dst_stride * count};
+ uint64_t dst_buffer_size = count == 1 ? src_stride : dst_stride * count;
+ struct radv_buffer dst_buffer = {.bo = dst_bo, .offset = dst_offset, .size = dst_buffer_size};
struct radv_buffer src_buffer = {
.bo = src_bo,