From 6fbe2be7a7719d6013312165769f6fafe140c2be Mon Sep 17 00:00:00 2001 From: Hans-Kristian Arntzen Date: Thu, 28 Aug 2025 11:46:48 +0200 Subject: [PATCH] nvk: Return 0 for opaque memory capture replay. If implementation does not actually replay the VA, it must return 0 to not violate: "If the memory object was allocated with a non-zero value of opaqueCaptureAddress, the return value must be the same address." Fixes RenderDoc capture replay, which asserts on the this spec rule being followed. Signed-off-by: Hans-Kristian Arntzen Fixes: ed6d5c33 ("nvk: Implement VK_EXT/KHR_buffer_device_address") Reviewed-by: Mohamed Ahmed Closes #13784 Part-of: --- src/nouveau/vulkan/nvk_device_memory.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/nouveau/vulkan/nvk_device_memory.c b/src/nouveau/vulkan/nvk_device_memory.c index 19a127a64ed..9f6aaa9f908 100644 --- a/src/nouveau/vulkan/nvk_device_memory.c +++ b/src/nouveau/vulkan/nvk_device_memory.c @@ -433,7 +433,6 @@ nvk_GetDeviceMemoryOpaqueCaptureAddress( UNUSED VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo) { - VK_FROM_HANDLE(nvk_device_memory, mem, pInfo->memory); - - return mem->mem->va->addr; + /* Addresses are replayed at buffer and image creation, not memory. */ + return 0; }