[compiler-rt] [tsan] Fix ASLR edge case, and improve diagnostics (PR #97125)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 28 16:56:16 PDT 2024
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff 9572388a849c494d45df334f9facd8ee6663953f 4d54427724583aded98ec69bf928dd453c2c63f9 -- compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp b/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
index 6c138ba5ee..621c679a05 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
+++ b/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
@@ -290,9 +290,10 @@ static void ReExecIfNeeded(bool ignore_heap) {
CHECK_NE(personality(old_personality | ADDR_NO_RANDOMIZE), -1);
reexec = true;
} else {
- Printf("FATAL: ThreadSanitizer: memory layout is incompatible, "
- "even though ASLR is disabled.\n"
- "Please file a bug.\n");
+ Printf(
+ "FATAL: ThreadSanitizer: memory layout is incompatible, "
+ "even though ASLR is disabled.\n"
+ "Please file a bug.\n");
DumpProcessMap();
Die();
}
@@ -401,10 +402,10 @@ void InitializePlatform() {
// 2) Intervening allocations happen
// 3) InitializePlatform(): memory layout is incompatible and fails
// CheckAndProtect()
-# if !SANITIZER_GO
+# if !SANITIZER_GO
// Heap has already been allocated
ReExecIfNeeded(true);
-# endif
+# endif
// Earlier initialization steps already re-exec'ed until we got a compatible
// memory layout, so we don't expect any more issues here.
``````````
</details>
https://github.com/llvm/llvm-project/pull/97125
More information about the llvm-commits
mailing list