Skip to content
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

[ASan][test] XFAIL Linux/preinstalled_signal.cpp on Linux/sparc64 #109623

Merged

Conversation

rorth
Copy link
Collaborator

@rorth rorth commented Sep 23, 2024

With ASan testing enabled on SPARC as per PR #107405, the

  AddressSanitizer-sparc-linux-dynamic :: TestCases/Linux/preinstalled_signal.cpp

test FAILs on Linux/sparc64. See Issue #109573 for all the details, but the core is that syscall(__NR_rt_sigaction) cannot be used because it takes an additional argument that isn't accessible outside of libc, while switching to sigaction instead changes the order of AsanInitInternal and Init, breaking the test.

Therefore this patch XFAILs the test.

Tested on sparc64-unknown-linux-gnu and x86_64-pc-linux-gnu.

With ASan testing enabled on SPARC as per PR llvm#107405, the
```
  AddressSanitizer-sparc-linux-dynamic :: TestCases/Linux/preinstalled_signal.cpp
```
test `FAIL`s on Linux/sparc64.  See Issue llvm#109573 for all the details, but
the core is that `syscall(__NR_rt_sigaction)` cannot be used because it
takes an additional argument that isn't accessible outside of `libc`, while
switching to `sigaction` instead changes the order of `AsanInitInternal`
and `Init`, breaking the test.

Therefore this patch `XFAIL`s the test.

Tested on `sparc64-unknown-linux-gnu` and `x86_64-pc-linux-gnu`.
@llvmbot
Copy link
Member

llvmbot commented Sep 23, 2024

@llvm/pr-subscribers-compiler-rt-sanitizer

Author: Rainer Orth (rorth)

Changes

With ASan testing enabled on SPARC as per PR #107405, the

  AddressSanitizer-sparc-linux-dynamic :: TestCases/Linux/preinstalled_signal.cpp

test FAILs on Linux/sparc64. See Issue #109573 for all the details, but the core is that syscall(__NR_rt_sigaction) cannot be used because it takes an additional argument that isn't accessible outside of libc, while switching to sigaction instead changes the order of AsanInitInternal and Init, breaking the test.

Therefore this patch XFAILs the test.

Tested on sparc64-unknown-linux-gnu and x86_64-pc-linux-gnu.


Full diff: https://github.com/llvm/llvm-project/pull/109623.diff

1 Files Affected:

  • (modified) compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp (+3)
diff --git a/compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp b/compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp
index 71929fdd9b37fe..dd31693bc57083 100644
--- a/compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp
+++ b/compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp
@@ -17,6 +17,9 @@
 // This way of setting LD_PRELOAD does not work with Android test runner.
 // REQUIRES: !android
 
+// Issue #109573: Cannot use syscall(__NR_rt_sigaction) on Linux/sparc64.
+// XFAIL: target={{sparc.*-.*-linux.*}}
+
 #include <assert.h>
 #include <signal.h>
 #include <stdio.h>

@rorth rorth merged commit 02711a7 into llvm:main Sep 23, 2024
9 of 10 checks passed
augusto2112 pushed a commit to augusto2112/llvm-project that referenced this pull request Sep 26, 2024
…vm#109623)

With ASan testing enabled on SPARC as per PR llvm#107405, the
```
  AddressSanitizer-sparc-linux-dynamic :: TestCases/Linux/preinstalled_signal.cpp
```
test `FAIL`s on Linux/sparc64. See Issue llvm#109573 for all the details,
but the core is that `syscall(__NR_rt_sigaction)` cannot be used because
it takes an additional argument that isn't accessible outside of `libc`,
while switching to `sigaction` instead changes the order of
`AsanInitInternal` and `Init`, breaking the test.

Therefore this patch `XFAIL`s the test.

Tested on `sparc64-unknown-linux-gnu` and `x86_64-pc-linux-gnu`.
xgupta pushed a commit to xgupta/llvm-project that referenced this pull request Oct 4, 2024
…vm#109623)

With ASan testing enabled on SPARC as per PR llvm#107405, the
```
  AddressSanitizer-sparc-linux-dynamic :: TestCases/Linux/preinstalled_signal.cpp
```
test `FAIL`s on Linux/sparc64. See Issue llvm#109573 for all the details,
but the core is that `syscall(__NR_rt_sigaction)` cannot be used because
it takes an additional argument that isn't accessible outside of `libc`,
while switching to `sigaction` instead changes the order of
`AsanInitInternal` and `Init`, breaking the test.

Therefore this patch `XFAIL`s the test.

Tested on `sparc64-unknown-linux-gnu` and `x86_64-pc-linux-gnu`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants