[compiler-rt] 577a80b - [scudo] Disable secondary cache-unmap tests on arm32.

Mitch Phillips via llvm-commits llvm-commits at lists.llvm.org
Thu May 20 11:08:08 PDT 2021


Author: Mitch Phillips
Date: 2021-05-20T11:07:45-07:00
New Revision: 577a80bff8bdf9b26c0f4ff6d1807e43da66ec6a

URL: https://github.com/llvm/llvm-project/commit/577a80bff8bdf9b26c0f4ff6d1807e43da66ec6a
DIFF: https://github.com/llvm/llvm-project/commit/577a80bff8bdf9b26c0f4ff6d1807e43da66ec6a.diff

LOG: [scudo] Disable secondary cache-unmap tests on arm32.

Looks like secondary pointers don't get unmapped on one of the arm32
bots. In the interests of landing some dependent patches, disable this
test on arm32 so that it can be tested in isolation later.

Reviewed By: cryptoad, vitalybuka

Split from differential patchset (1/2): https://reviews.llvm.org/D102648

Added: 
    

Modified: 
    compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp b/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
index a55704297de5c..9dcf52d909af0 100644
--- a/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
+++ b/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
@@ -32,9 +32,16 @@ template <typename Config> static void testSecondaryBasic(void) {
   memset(P, 'A', Size);
   EXPECT_GE(SecondaryT::getBlockSize(P), Size);
   L->deallocate(scudo::Options{}, P);
+
+// TODO(hctim): Looks like the secondary pointer doesn't get unmapped on arm32.
+// It's not clear whether this is a kernel issue, or something in EXPECT_DEATH()
+// is mmap-ing something that uses the same vaddr space. For now, just disable
+// the test on arm32 until we can debug it further.
+#ifndef __arm__
   // If the Secondary can't cache that pointer, it will be unmapped.
   if (!L->canCache(Size))
     EXPECT_DEATH(memset(P, 'A', Size), "");
+#endif // __arm__
 
   const scudo::uptr Align = 1U << 16;
   P = L->allocate(scudo::Options{}, Size + Align, Align);


        


More information about the llvm-commits mailing list