Module: Mesa Branch: staging/23.0 Commit: 02c243ede386207599127c7b3b9baf0b97e6c3f1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=02c243ede386207599127c7b3b9baf0b97e6c3f1
Author: Väinö Mäkelä <[email protected]> Date: Sat Nov 19 21:23:27 2022 +0200 hasvk: Mark VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL as stencil write optimal VK_KHR_synchronization2 added VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL, which was not previously recognized by vk_image_layout_stencil_write_optimal. Would close https://gitlab.freedesktop.org/mesa/mesa/-/issues/5578 if it wasn't already closed. Fixes: b996fa8efaa ("anv: implement VK_KHR_synchronization2") Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19876> (cherry picked from commit d3162f97b5adfe61da3e7409ed0bc0845ce8c33d) --- .pick_status.json | 2 +- src/intel/vulkan_hasvk/genX_cmd_buffer.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 4405dbe0720..6eb149d1ea2 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -31,7 +31,7 @@ "description": "hasvk: Mark VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL as stencil write optimal", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "b996fa8efaa42558bda2c52377561d7eb3c4127e" }, diff --git a/src/intel/vulkan_hasvk/genX_cmd_buffer.c b/src/intel/vulkan_hasvk/genX_cmd_buffer.c index 1e840ef5dcc..ecc85fe4879 100644 --- a/src/intel/vulkan_hasvk/genX_cmd_buffer.c +++ b/src/intel/vulkan_hasvk/genX_cmd_buffer.c @@ -510,7 +510,8 @@ vk_image_layout_stencil_write_optimal(VkImageLayout layout) { return layout == VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL || layout == VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL || - layout == VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL; + layout == VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL || + layout == VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL; } #endif @@ -541,6 +542,7 @@ transition_stencil_buffer(struct anv_cmd_buffer *cmd_buffer, * - VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL * - VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL * - VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL + * - VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL * * For general, we have no nice opportunity to transition so we do the copy * to the shadow unconditionally at the end of the subpass. For transfer @@ -5724,6 +5726,7 @@ void genX(CmdEndRendering)( * - VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL * - VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL * - VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL + * - VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL * - VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT * * For general, we have no nice opportunity to transition so we do the copy
