[compiler-rt] [scudo] [MTE] resize stack depot for allocation ring buffer (PR #74515)

via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 5 15:13:42 PST 2024


================
@@ -917,8 +919,14 @@ class Allocator {
       Primary.Options.clear(OptionBit::AddLargeAllocationSlack);
   }
 
-  const char *getStackDepotAddress() const {
-    return reinterpret_cast<const char *>(&Depot);
+  const char *getStackDepotAddress() {
+    initThreadMaybe();
+    return reinterpret_cast<char *>(Depot);
+  }
+
+  uptr getStackDepotSize() {
+    initThreadMaybe();
----------------
ChiaHungDuan wrote:

Got it. In genereal, `initThreadMaybe` is used when we are going to do some memory allocation/deallocation. Given the `mapAndInitializeRingBuffer` is not synchronized at the function level. I'm fine with doing it like this. I will figure out if we can make it better

https://github.com/llvm/llvm-project/pull/74515


More information about the llvm-commits mailing list