[llvm-branch-commits] [compiler-rt] [scudo] Allow to resize allocation ring buffer (PR #82683)

Florian Mayer via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Feb 23 11:31:24 PST 2024


https://github.com/fmayer updated https://github.com/llvm/llvm-project/pull/82683

>From af8afe08ee20a04b2ccb363cac66aa02cfaecd02 Mon Sep 17 00:00:00 2001
From: Florian Mayer <fmayer at google.com>
Date: Thu, 22 Feb 2024 12:37:06 -0800
Subject: [PATCH] update message

Created using spr 1.3.4
---
 compiler-rt/lib/scudo/standalone/combined.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/compiler-rt/lib/scudo/standalone/combined.h b/compiler-rt/lib/scudo/standalone/combined.h
index 479e49c328e3d7..24ad979a9653e1 100644
--- a/compiler-rt/lib/scudo/standalone/combined.h
+++ b/compiler-rt/lib/scudo/standalone/combined.h
@@ -1600,6 +1600,9 @@ class Allocator {
   }
 
   void swapOutRingBuffer(AllocationRingBuffer *NewRB) {
+    // To allow resizeRingBuffer to be called in a multi-threaded context by apps,
+    // we do not actually unmap, but only madvise(DONTNEED) the pages. That way,
+    // straggler threads will not crash.
     AllocationRingBuffer *PrevRB = reinterpret_cast<AllocationRingBuffer *>(
         atomic_exchange(&RingBufferAddress, reinterpret_cast<uptr>(NewRB),
                         memory_order_acq_rel));



More information about the llvm-branch-commits mailing list