radv: add queue family assertions when doing decompression passes

This is to make sure the previous functions that are supposed to
trigger a decompression pass work as expected.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34231>
This commit is contained in:
Samuel Pitoiset 2025-03-25 15:00:31 +01:00 committed by Marge Bot
parent 086f529bbe
commit 5398ec6356
3 changed files with 7 additions and 2 deletions

View file

@ -456,6 +456,7 @@ radv_expand_depth_stencil(struct radv_cmd_buffer *cmd_buffer, struct radv_image
if (cmd_buffer->qf == RADV_QUEUE_GENERAL) {
radv_process_depth_stencil(cmd_buffer, image, subresourceRange, sample_locs);
} else {
assert(cmd_buffer->qf == RADV_QUEUE_COMPUTE);
radv_expand_depth_stencil_compute(cmd_buffer, image, subresourceRange);
}
}

View file

@ -557,8 +557,10 @@ radv_decompress_dcc(struct radv_cmd_buffer *cmd_buffer, struct radv_image *image
barrier.layout_transitions.dcc_decompress = 1;
radv_describe_layout_transition(cmd_buffer, &barrier);
if (cmd_buffer->qf == RADV_QUEUE_GENERAL)
if (cmd_buffer->qf == RADV_QUEUE_GENERAL) {
radv_process_color_image(cmd_buffer, image, subresourceRange, DCC_DECOMPRESS);
else
} else {
assert(cmd_buffer->qf == RADV_QUEUE_COMPUTE);
radv_decompress_dcc_compute(cmd_buffer, image, subresourceRange);
}
}

View file

@ -105,6 +105,8 @@ radv_process_color_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *
VkPipeline pipeline;
VkResult result;
assert(cmd_buffer->qf == RADV_QUEUE_GENERAL || cmd_buffer->qf == RADV_QUEUE_COMPUTE);
result = get_pipeline(device, samples_log2, &pipeline, &layout);
if (result != VK_SUCCESS) {
vk_command_buffer_set_error(&cmd_buffer->vk, result);