From f3c6bbdd8dd2703fd12836a19cbd77ed8abde26c Mon Sep 17 00:00:00 2001 From: Hans-Kristian Arntzen Date: Fri, 13 Sep 2024 13:31:04 +0200 Subject: [PATCH] radv: Always make sure to write the pipeline binary key. There's nothing in spec that says that key is only written if data is also written. Signed-off-by: Hans-Kristian Arntzen Fixes: be06bfcbed5 ("radv: add initial support for pipeline binaries") Reviewed-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/radv_pipeline_binary.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/amd/vulkan/radv_pipeline_binary.c b/src/amd/vulkan/radv_pipeline_binary.c index c7d69ac07ed..d507308cdfe 100644 --- a/src/amd/vulkan/radv_pipeline_binary.c +++ b/src/amd/vulkan/radv_pipeline_binary.c @@ -418,6 +418,9 @@ radv_GetPipelineBinaryDataKHR(VkDevice _device, const VkPipelineBinaryDataInfoKH VK_FROM_HANDLE(radv_pipeline_binary, pipeline_binary, pInfo->pipelineBinary); const size_t size = pipeline_binary->size; + memcpy(pPipelineBinaryKey->key, pipeline_binary->key, sizeof(pipeline_binary->key)); + pPipelineBinaryKey->keySize = sizeof(pipeline_binary->key); + if (!pPipelineBinaryData) { *pPipelineBinaryDataSize = size; return VK_SUCCESS; @@ -431,9 +434,6 @@ radv_GetPipelineBinaryDataKHR(VkDevice _device, const VkPipelineBinaryDataInfoKH memcpy(pPipelineBinaryData, pipeline_binary->data, size); *pPipelineBinaryDataSize = size; - memcpy(pPipelineBinaryKey->key, pipeline_binary->key, sizeof(pipeline_binary->key)); - pPipelineBinaryKey->keySize = sizeof(pipeline_binary->key); - return VK_SUCCESS; }