From 1b3eb8ef2863b810e99236ec9bf1eb558c67b1f1 Mon Sep 17 00:00:00 2001 From: daanx Date: Thu, 29 Feb 2024 19:17:24 -0800 Subject: [PATCH] quick exit from try_reclaim if no abandoned segments --- src/segment.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/segment.c b/src/segment.c index 3dd37429..08909eb1 100644 --- a/src/segment.c +++ b/src/segment.c @@ -926,6 +926,8 @@ void _mi_abandoned_reclaim_all(mi_heap_t* heap, mi_segments_tld_t* tld) { static mi_segment_t* mi_segment_try_reclaim(mi_heap_t* heap, size_t block_size, mi_page_kind_t page_kind, bool* reclaimed, mi_segments_tld_t* tld) { *reclaimed = false; + if (mi_atomic_load_relaxed(&abandoned_count) == 0) return NULL; + mi_segment_t* segment; mi_arena_id_t current_id = 0; size_t current_idx = 0;