From b725e39d1a38e018e72389de7d72d7db351a8ccb Mon Sep 17 00:00:00 2001 From: Nicolas James Date: Mon, 6 Apr 2026 20:34:29 +1000 Subject: Fix race during teardown, don't enable PresentID - it's not a requirement --- src/layer.cc | 11 +---------- src/queue_context.cc | 2 +- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/layer.cc b/src/layer.cc index 471d2fb..b8a2bd0 100644 --- a/src/layer.cc +++ b/src/layer.cc @@ -636,16 +636,6 @@ static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFeatures2( vtable.GetPhysicalDeviceFeatures2(physical_device, pFeatures); - // We're going to use this feature for both VK_AMD_anti_lag and - // VK_NV_low_latency2. It simplifies things a bit if we share a code path. - if (const auto pidf = find_next( - pFeatures, - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR); - pidf) { - - pidf->presentId = true; - } - // Don't provide AntiLag if we're exposing reflex - VK_NV_low_latency2 uses // VkSurfaceCapabilities2KHR to determine if a surface is capable of reflex // instead of AMD's physical device switch found here. @@ -840,6 +830,7 @@ void QueueNotifyOutOfBandNV( VkResult SetLatencySleepModeNV( VkDevice device, [[maybe_unused]] VkSwapchainKHR swapchain, [[maybe_unused]] const VkLatencySleepModeInfoNV* pSleepModeInfo) { + const auto context = layer_context.get_context(device); const auto strategy = diff --git a/src/queue_context.cc b/src/queue_context.cc index fce501b..c920610 100644 --- a/src/queue_context.cc +++ b/src/queue_context.cc @@ -53,7 +53,7 @@ QueueContext::QueueContext(DeviceContext& device, const VkQueue& queue, }(); } -QueueContext::~QueueContext() { this->timestamp_pool.reset(); } +QueueContext::~QueueContext() {} bool QueueContext::should_inject_timestamps() const { const auto& physical_device = this->device.physical_device; -- cgit v1.2.3