From 31237f08035d930f84bff61eff187c35470589dc Mon Sep 17 00:00:00 2001 From: Adrian Cojocaru Date: Mon, 16 Feb 2026 16:23:36 +0200 Subject: [PATCH] core: Disable VMA leak check (#4100) --- include/mbgl/vulkan/renderer_backend.hpp | 2 +- src/mbgl/vulkan/renderer_backend.cpp | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/include/mbgl/vulkan/renderer_backend.hpp b/include/mbgl/vulkan/renderer_backend.hpp index 67ef4d1ed..aa641eec9 100644 --- a/include/mbgl/vulkan/renderer_backend.hpp +++ b/include/mbgl/vulkan/renderer_backend.hpp @@ -22,7 +22,7 @@ #if !defined(NDEBUG) && !defined(__ANDROID__) #define ENABLE_VULKAN_VALIDATION // #define ENABLE_VULKAN_GPU_ASSISTED_VALIDATION -// #define ENABLE_VMA_DEBUG +// #define ENABLE_VMA_DEBUG #endif namespace mbgl { diff --git a/src/mbgl/vulkan/renderer_backend.cpp b/src/mbgl/vulkan/renderer_backend.cpp index 766de3d44..edd4d90a9 100644 --- a/src/mbgl/vulkan/renderer_backend.cpp +++ b/src/mbgl/vulkan/renderer_backend.cpp @@ -36,7 +36,7 @@ #ifdef ENABLE_VMA_DEBUG -#define VMA_DEBUG_MARGIN 16 +#define VMA_DEBUG_MARGIN 4 #define VMA_DEBUG_DETECT_CORRUPTION 1 #define VMA_DEBUG_INITIALIZE_ALLOCATIONS 1 @@ -52,6 +52,14 @@ #define VMA_DEBUG_LOG(str) VMA_DEBUG_LOG_FORMAT("%s", (str)) #define VMA_LEAK_LOG_FORMAT(...) VMA_DEBUG_LOG_FORMAT(__VA_ARGS__) +#else + +// - triggering VMA_ASSERT_LEAK in `VmaDeviceMemoryBlock::Destroy` without any log printed by +// `VmaBlockMetadata_TLSF::DebugLogAllAllocations` (since all blocks are free). +// - VMA_LEAK_LOG_FORMAT logs generate an equal number of alloc/free events. +// - https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/issues/276 +#undef VMA_ASSERT_LEAK + #endif #define VMA_IMPLEMENTATION