Skip to content

test_perf_profiler: test_trampoline_works_with_forks() failed on Address Sanitizer CI #109580

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

Closed
vstinner opened this issue Sep 19, 2023 · 3 comments
Labels
tests Tests in the Lib/test dir type-bug An unexpected behavior, bug, or error

Comments

@vstinner
Copy link
Member

vstinner commented Sep 19, 2023

Bug report

test_trampoline_works_with_forks (test.test_perf_profiler.TestPerfTrampoline.test_trampoline_works_with_forks) ... FAIL

FAIL: test_trampoline_works_with_forks (test.test_perf_profiler.TestPerfTrampoline.test_trampoline_works_with_forks)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/runner/work/cpython/cpython/Lib/test/test_perf_profiler.py", line 123, in test_trampoline_works_with_forks
    self.assertEqual(process.returncode, 0)
AssertionError: 139 != 0

It looks like a SIGSEGV crash (128 + SIGSEGV = 139 on Linux).

build: https://github.com/python/cpython/actions/runs/6237694188/job/16931875912?pr=108965

Passed when re-run:

0:09:17 load avg: 4.36 Re-running 1 failed tests in verbose mode in subprocesses
0:09:17 load avg: 4.36 Run 1 test in parallel using 1 worker process (timeout: 20 min, worker timeout: 25 min)
0:09:17 load avg: 4.36 [1/1] test_perf_profiler passed
Re-running test_perf_profiler in verbose mode (matching: test_trampoline_works_with_forks)
test_trampoline_works_with_forks (test.test_perf_profiler.TestPerfTrampoline.test_trampoline_works_with_forks) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.083s

OK

cc @pablogsal

Linked PRs

@vstinner vstinner added type-bug An unexpected behavior, bug, or error tests Tests in the Lib/test dir labels Sep 19, 2023
@vstinner
Copy link
Member Author

I cannot reproduce the issue locally on Fedora 38.

One option is to skip the test if Python is built with ASAN, as already done on TestPerfProfiler test case: skip the whole file.

@pablogsal
Copy link
Member

pablogsal commented Sep 19, 2023

I cannot reproduce the issue locally on Fedora 38.

One option is to skip the test if Python is built with ASAN, as already done on TestPerfProfiler test case: skip the whole file.

I'm fine skipping the file if is built with ASAN.

vstinner added a commit to vstinner/cpython that referenced this issue Sep 19, 2023
Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build.
@vstinner
Copy link
Member Author

@pablogsal:

I'm fine skipping the file if is built with ASAN.

Ok, I created PR #109584 for that.

I don't have the bandwidth to investigate why Python built with ASAN does crash on this Ubuntu Address Sanitizer job, but it doesn't when I run the test locally on my Fedora 38.

vstinner added a commit that referenced this issue Sep 19, 2023
Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build.
miss-islington pushed a commit to miss-islington/cpython that referenced this issue Sep 19, 2023
Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build.
(cherry picked from commit 754519a)

Co-authored-by: Victor Stinner <[email protected]>
csm10495 pushed a commit to csm10495/cpython that referenced this issue Sep 28, 2023
Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build.
Yhg1s pushed a commit that referenced this issue Oct 2, 2023
…109585)

gh-109580: Skip test_perf_profiler on ASAN build (GH-109584)

Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build.
(cherry picked from commit 754519a)

Co-authored-by: Victor Stinner <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Tests in the Lib/test dir type-bug An unexpected behavior, bug, or error
Projects
None yet
Development

No branches or pull requests

2 participants