Module: Mesa Branch: main Commit: 1405f9b68b98d1573e52710b925ada526e7bfed4 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1405f9b68b98d1573e52710b925ada526e7bfed4
Author: Timur Kristóf <timur.kris...@gmail.com> Date: Sat Jan 6 11:14:45 2024 +0100 radv: Correct binding index for transfer buffer-image copies. Signed-off-by: Timur Kristóf <timur.kris...@gmail.com> Reviewed-by: Tatsuyuki Ishi <ishitatsuy...@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26913> --- src/amd/vulkan/meta/radv_meta_copy.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/amd/vulkan/meta/radv_meta_copy.c b/src/amd/vulkan/meta/radv_meta_copy.c index 9c35ddb6b61..a25405c5564 100644 --- a/src/amd/vulkan/meta/radv_meta_copy.c +++ b/src/amd/vulkan/meta/radv_meta_copy.c @@ -95,11 +95,12 @@ transfer_copy_buffer_image(struct radv_cmd_buffer *cmd_buffer, struct radv_buffe { const struct radv_device *device = cmd_buffer->device; struct radeon_cmdbuf *cs = cmd_buffer->cs; + const VkImageAspectFlags aspect_mask = region->imageSubresource.aspectMask; + const unsigned binding_idx = image->disjoint ? radv_plane_from_aspect(aspect_mask) : 0; - radv_cs_add_buffer(device->ws, cs, image->bindings[0].bo); + radv_cs_add_buffer(device->ws, cs, image->bindings[binding_idx].bo); radv_cs_add_buffer(device->ws, cs, buffer->bo); - const VkImageAspectFlags aspect_mask = region->imageSubresource.aspectMask; struct radv_sdma_surf buf = radv_sdma_get_buf_surf(buffer, image, region, aspect_mask); const struct radv_sdma_surf img = radv_sdma_get_surf(device, image, region->imageSubresource, region->imageOffset, aspect_mask);