From cf9c23a5e208dcbba5b880ea9f728e8a83069599 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 14 Jan 2026 13:34:01 -0500 Subject: [PATCH] zink: correctly use GENERAL layout for dynamic texture clears missed this case Fixes: 622612f67ea ("zink: hook up global GENERAL image layouts") Part-of: --- src/gallium/drivers/zink/zink_clear.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_clear.c b/src/gallium/drivers/zink/zink_clear.c index 5c9be56b6f7..025c0657346 100644 --- a/src/gallium/drivers/zink/zink_clear.c +++ b/src/gallium/drivers/zink/zink_clear.c @@ -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;