From 388a3cff5c97dd1d3f9833e3df9a195cfb742e1c Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Wed, 5 Nov 2025 16:07:48 -0500 Subject: [PATCH] panvk: Upload all variants at the end of compile_shader() Reviewed-by: Christoph Pillmayer Acked-by: Eric R. Smith Part-of: --- src/panfrost/vulkan/panvk_vX_shader.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/src/panfrost/vulkan/panvk_vX_shader.c b/src/panfrost/vulkan/panvk_vX_shader.c index 47027131ba6..f8b3621c322 100644 --- a/src/panfrost/vulkan/panvk_vX_shader.c +++ b/src/panfrost/vulkan/panvk_vX_shader.c @@ -1371,13 +1371,6 @@ panvk_compile_shader(struct panvk_device *dev, panvk_shader_destroy(&dev->vk, &shader->vk, pAllocator); return result; } - - result = panvk_shader_upload(dev, variant, pAllocator); - - if (result != VK_SUCCESS) { - panvk_shader_destroy(&dev->vk, &shader->vk, pAllocator); - return result; - } } } else { struct panvk_shader_variant *variant = @@ -1399,9 +1392,10 @@ panvk_compile_shader(struct panvk_device *dev, panvk_shader_destroy(&dev->vk, &shader->vk, pAllocator); return result; } + } + panvk_shader_foreach_variant(shader, variant) { result = panvk_shader_upload(dev, variant, pAllocator); - if (result != VK_SUCCESS) { panvk_shader_destroy(&dev->vk, &shader->vk, pAllocator); return result;