[compiler-rt] [scudo] Skip test if mlock fails. (PR #168448)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 17 13:50:13 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-compiler-rt-sanitizer
Author: Christopher Ferris (cferris1000)
<details>
<summary>Changes</summary>
Some linux versions might not support the mlock call, so skip that part of the test if the mlock fails.
---
Full diff: https://github.com/llvm/llvm-project/pull/168448.diff
1 Files Affected:
- (modified) compiler-rt/lib/scudo/standalone/tests/map_test.cpp (+11-11)
``````````diff
diff --git a/compiler-rt/lib/scudo/standalone/tests/map_test.cpp b/compiler-rt/lib/scudo/standalone/tests/map_test.cpp
index afdfe5be85fb6..9d1a35c44679d 100644
--- a/compiler-rt/lib/scudo/standalone/tests/map_test.cpp
+++ b/compiler-rt/lib/scudo/standalone/tests/map_test.cpp
@@ -120,17 +120,17 @@ TEST(ScudoMapTest, Zeroing) {
#if SCUDO_LINUX
// Now verify that if madvise fails, the data is still zeroed.
memset(Data, 1U, MemMap.getCapacity());
- EXPECT_NE(-1, mlock(Data, MemMap.getCapacity()));
-
- EXPECT_EQ(1U, Data[0]);
- EXPECT_EQ(1U, Data[PageSize]);
- EXPECT_EQ(1U, Data[PageSize * 2]);
- MemMap.releaseAndZeroPagesToOS(MemMap.getBase(), MemMap.getCapacity());
- EXPECT_EQ(0U, Data[0]);
- EXPECT_EQ(0U, Data[PageSize]);
- EXPECT_EQ(0U, Data[PageSize * 2]);
-
- EXPECT_NE(-1, munlock(Data, MemMap.getCapacity()));
+ if (mlock(Data, MemMap.getCapacity()) != -1) {
+ EXPECT_EQ(1U, Data[0]);
+ EXPECT_EQ(1U, Data[PageSize]);
+ EXPECT_EQ(1U, Data[PageSize * 2]);
+ MemMap.releaseAndZeroPagesToOS(MemMap.getBase(), MemMap.getCapacity());
+ EXPECT_EQ(0U, Data[0]);
+ EXPECT_EQ(0U, Data[PageSize]);
+ EXPECT_EQ(0U, Data[PageSize * 2]);
+
+ EXPECT_NE(-1, munlock(Data, MemMap.getCapacity()));
+ }
#endif
MemMap.unmap();
``````````
</details>
https://github.com/llvm/llvm-project/pull/168448
More information about the llvm-commits
mailing list