[3.12] gh-109580: Skip test_perf_profiler on ASAN build (GH-109584) (#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 754519a9f8)

Co-authored-by: Victor Stinner <vstinner@python.org>
This commit is contained in:
Miss Islington (bot) 2023-10-02 08:00:11 -07:00 committed by GitHub
parent ddc0adcdb3
commit c3038bed1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 1 deletions

View file

@ -17,6 +17,11 @@
if not support.has_subprocess_support:
raise unittest.SkipTest("test module requires subprocess")
if support.check_sanitizer(address=True, memory=True, ub=True):
# gh-109580: Skip the test because it does crash randomly if Python is
# built with ASAN.
raise unittest.SkipTest("test crash randomly on ASAN/MSAN/UBSAN build")
def supports_trampoline_profiling():
perf_trampoline = sysconfig.get_config_var("PY_HAVE_PERF_TRAMPOLINE")
@ -287,7 +292,6 @@ def run_perf(cwd, *args, **env_vars):
@unittest.skipUnless(perf_command_works(), "perf command doesn't work")
@unittest.skipUnless(is_unwinding_reliable(), "Unwinding is unreliable")
@support.skip_if_sanitizer(address=True, memory=True, ub=True)
class TestPerfProfiler(unittest.TestCase):
def setUp(self):
super().setUp()

View file

@ -0,0 +1,3 @@
Skip ``test_perf_profiler`` if Python is built with ASAN, MSAN or UBSAN
sanitizer. Python does crash randomly in this test on such build. Patch by
Victor Stinner.