zink: correctly use GENERAL layout for dynamic texture clears

missed this case

Fixes: 622612f67e ("zink: hook up global GENERAL image layouts")
(cherry picked from commit cf9c23a5e2)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39462>
This commit is contained in:
Mike Blumenkrantz 2026-01-14 13:34:01 -05:00 committed by Dylan Baker
parent 137224f2e2
commit 6aee181cad
2 changed files with 5 additions and 2 deletions

View file

@ -1134,7 +1134,7 @@
"description": "zink: correctly use GENERAL layout for dynamic texture clears",
"nominated": true,
"nomination_type": 2,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "622612f67ea72298c3d85dfe53c5d54ee9f98527",
"notes": null

View file

@ -455,7 +455,10 @@ zink_clear_texture_dynamic(struct pipe_context *pctx,
VkRenderingAttachmentInfo att = {0};
att.sType = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO;
att.imageView = surf->image_view;
att.imageLayout = res->aspect & VK_IMAGE_ASPECT_COLOR_BIT ? VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL : VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
if (screen->driver_workarounds.general_layout)
att.imageLayout = VK_IMAGE_LAYOUT_GENERAL;
else
att.imageLayout = res->aspect & VK_IMAGE_ASPECT_COLOR_BIT ? VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL : VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
att.loadOp = full_clear ? VK_ATTACHMENT_LOAD_OP_CLEAR : VK_ATTACHMENT_LOAD_OP_LOAD;
att.storeOp = VK_ATTACHMENT_STORE_OP_STORE;