From 421b15cd3a9ded82db725256e14ecd01327cf125 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Fri, 13 Feb 2026 08:04:53 +0100 Subject: [PATCH] radv/meta: remove redundant barriers in vkCmdResolveImage2() The source image layout must be either TRANSFER_SRC or GENERAL and the application must emit the image layout transition. There is no reason the source image wouldn't be readable by shaders. Signed-off-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/meta/radv_meta_resolve.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/amd/vulkan/meta/radv_meta_resolve.c b/src/amd/vulkan/meta/radv_meta_resolve.c index 4df9b7b62a8..f210d31bfa8 100644 --- a/src/amd/vulkan/meta/radv_meta_resolve.c +++ b/src/amd/vulkan/meta/radv_meta_resolve.c @@ -429,8 +429,6 @@ resolve_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image, depth_region.srcSubresource.aspectMask = VK_IMAGE_ASPECT_DEPTH_BIT; depth_region.dstSubresource.aspectMask = VK_IMAGE_ASPECT_DEPTH_BIT; - radv_decompress_resolve_src(cmd_buffer, src_image, src_image_layout, &depth_region, NULL); - if (resolve_method == RESOLVE_FRAGMENT) { radv_gfx_resolve_image(cmd_buffer, src_image, src_image->vk.format, src_image_layout, dst_image, dst_image->vk.format, dst_image_layout, resolve_mode_info->resolveMode, @@ -449,8 +447,6 @@ resolve_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image, stencil_region.srcSubresource.aspectMask = VK_IMAGE_ASPECT_STENCIL_BIT; stencil_region.dstSubresource.aspectMask = VK_IMAGE_ASPECT_STENCIL_BIT; - radv_decompress_resolve_src(cmd_buffer, src_image, src_image_layout, &stencil_region, NULL); - if (resolve_method == RESOLVE_FRAGMENT) { radv_gfx_resolve_image(cmd_buffer, src_image, src_image->vk.format, src_image_layout, dst_image, dst_image->vk.format, dst_image_layout, resolve_mode_info->stencilResolveMode, @@ -480,14 +476,10 @@ resolve_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image, dst_image_layout, region); break; case RESOLVE_FRAGMENT: - radv_decompress_resolve_src(cmd_buffer, src_image, src_image_layout, region, NULL); - radv_gfx_resolve_image(cmd_buffer, src_image, src_format, src_image_layout, dst_image, dst_format, dst_image_layout, resolve_mode, region); break; case RESOLVE_COMPUTE: - radv_decompress_resolve_src(cmd_buffer, src_image, src_image_layout, region, NULL); - radv_compute_resolve_image(cmd_buffer, src_image, src_format, src_image_layout, dst_image, dst_format, dst_image_layout, resolve_mode, region); break;