-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[NFCI] [hwasan] Add test demonstrating hwasan lsan false positive #142874
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[NFCI] [hwasan] Add test demonstrating hwasan lsan false positive #142874
Conversation
Created using spr 1.3.4
@llvm/pr-subscribers-compiler-rt-sanitizer Author: Florian Mayer (fmayer) ChangesFull diff: https://github.com/llvm/llvm-project/pull/142874.diff 1 Files Affected:
diff --git a/compiler-rt/test/hwasan/TestCases/Posix/dlerror.cpp b/compiler-rt/test/hwasan/TestCases/Posix/dlerror.cpp
new file mode 100644
index 0000000000000..2b8269852d50b
--- /dev/null
+++ b/compiler-rt/test/hwasan/TestCases/Posix/dlerror.cpp
@@ -0,0 +1,30 @@
+// Make sure dlerror is not classified as a leak even if we use dynamic TLS.
+// This is currently not implemented, so this test is XFAIL.
+
+// RUN: %clangxx_hwasan -O0 %s -o %t && HWASAN_OPTIONS=detect_leaks=1 %run %t
+// XFAIL: *
+
+#include <assert.h>
+#include <dlfcn.h>
+#include <pthread.h>
+#include <sanitizer/hwasan_interface.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+constexpr auto kKeys = 100;
+
+int main(int argc, char **argv) {
+ __hwasan_enable_allocator_tagging();
+ // Exhaust static TLS slots to force use of dynamic TLS.
+ pthread_key_t keys[kKeys];
+ for (int i = 0; i < kKeys; ++i) {
+ assert(pthread_key_create(&keys[i], nullptr) == 0);
+ }
+ void* o = dlopen("invalid_file_name.so", 0);
+ const char* err = dlerror();
+ for (int i = 0; i < kKeys; ++i) {
+ assert(pthread_key_delete(keys[i]) == 0);
+ }
+ return 0;
+}
|
✅ With the latest revision this PR passed the C/C++ code formatter. |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/51/builds/17394 Here is the relevant piece of the build log for the reference
|
No description provided.