diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-23-20-20-42.gh-issue-144194.IbXfxd.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-23-20-20-42.gh-issue-144194.IbXfxd.rst new file mode 100644 index 00000000000000..6ac558af2276a6 --- /dev/null +++ b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-23-20-20-42.gh-issue-144194.IbXfxd.rst @@ -0,0 +1,2 @@ +Fix mmap failure check in perf jitdump initialization. The code incorrectly +checked for NULL instead of MAP_FAILED, causing failures to go undetected. diff --git a/Python/perf_jit_trampoline.c b/Python/perf_jit_trampoline.c index f51ab1b47a04f1..0ba856ea610e59 100644 --- a/Python/perf_jit_trampoline.c +++ b/Python/perf_jit_trampoline.c @@ -1083,7 +1083,8 @@ static void* perf_map_jit_init(void) { 0 // Offset 0 (first page) ); - if (perf_jit_map_state.mapped_buffer == NULL) { + if (perf_jit_map_state.mapped_buffer == MAP_FAILED) { + perf_jit_map_state.mapped_buffer = NULL; close(fd); return NULL; // Memory mapping failed }