From 341b9b65a57dee1d4d16ec0994fe9a414b542ba5 Mon Sep 17 00:00:00 2001 From: Nicolas James Date: Tue, 7 Apr 2026 01:43:56 +1000 Subject: Fix rare race when timestamps are returned to the pool and reused before their work completes --- src/strategies/anti_lag/queue_strategy.cc | 2 +- src/strategies/low_latency2/swapchain_monitor.cc | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'src/strategies') diff --git a/src/strategies/anti_lag/queue_strategy.cc b/src/strategies/anti_lag/queue_strategy.cc index 0834a96..27a9337 100644 --- a/src/strategies/anti_lag/queue_strategy.cc +++ b/src/strategies/anti_lag/queue_strategy.cc @@ -56,7 +56,7 @@ void AntiLagQueueStrategy::await_complete() { return; } const auto& last = submissions.back(); - last->end->await_time(); + last->handle->await_end_time(); } // Stub - AntiLag doesn't care about presents. diff --git a/src/strategies/low_latency2/swapchain_monitor.cc b/src/strategies/low_latency2/swapchain_monitor.cc index 4c19251..b6d4dd0 100644 --- a/src/strategies/low_latency2/swapchain_monitor.cc +++ b/src/strategies/low_latency2/swapchain_monitor.cc @@ -59,7 +59,8 @@ void SwapchainMonitor::do_monitor(const std::stop_token stoken) { lock.unlock(); for (const auto& submission : semaphore_submission.submissions) { if (!submission.empty()) { - submission.back()->end->await_time(); + const auto& last = submission.back(); + last->handle->await_end_time(); } } -- cgit v1.2.3