From: Xiaowei Lu Date: Thu, 9 Jul 2026 19:17:40 +0000 (+0800) Subject: gh-152769: Enable perf trampoline on musl (Alpine Linux) (#152774) X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=b9e8979dcd563ee913c66802c8544aa050fda2d5;p=thirdparty%2FPython%2Fcpython.git gh-152769: Enable perf trampoline on musl (Alpine Linux) (#152774) --- diff --git a/Misc/NEWS.d/next/Build/2026-07-01-17-53-00.gh-issue-152769.Kp7mQ2.rst b/Misc/NEWS.d/next/Build/2026-07-01-17-53-00.gh-issue-152769.Kp7mQ2.rst new file mode 100644 index 000000000000..04a6ef4f5e0a --- /dev/null +++ b/Misc/NEWS.d/next/Build/2026-07-01-17-53-00.gh-issue-152769.Kp7mQ2.rst @@ -0,0 +1,4 @@ +Enable the :ref:`perf profiler ` trampoline on Alpine Linux with the +musl C library on ``x86_64`` and ``aarch64``. The +trampoline is architecture-specific and does not depend on the C library, so +the same assembly trampoline used for glibc is reused for musl. diff --git a/configure b/configure index 11ef14c46eee..17b7ef765cc7 100755 --- a/configure +++ b/configure @@ -14440,9 +14440,15 @@ case $PLATFORM_TRIPLET in #( x86_64-linux-gnu) : perf_trampoline=yes PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_x86_64.o ;; #( + x86_64-linux-musl) : + perf_trampoline=yes + PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_x86_64.o ;; #( aarch64-linux-gnu) : perf_trampoline=yes PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_aarch64.o ;; #( + aarch64-linux-musl) : + perf_trampoline=yes + PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_aarch64.o ;; #( darwin) : case $MACOSX_DEPLOYMENT_TARGET in #( 10.[0-9]|10.1[0-1]) : diff --git a/configure.ac b/configure.ac index 568286a9e468..ab64ac8769b5 100644 --- a/configure.ac +++ b/configure.ac @@ -3874,8 +3874,12 @@ PERF_TRAMPOLINE_OBJ="" AS_CASE([$PLATFORM_TRIPLET], [x86_64-linux-gnu], [perf_trampoline=yes PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_x86_64.o], + [x86_64-linux-musl], [perf_trampoline=yes + PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_x86_64.o], [aarch64-linux-gnu], [perf_trampoline=yes PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_aarch64.o], + [aarch64-linux-musl], [perf_trampoline=yes + PERF_TRAMPOLINE_OBJ=Python/asm_trampoline_aarch64.o], [darwin], [AS_CASE([$MACOSX_DEPLOYMENT_TARGET], [[10.[0-9]|10.1[0-1]]], [perf_trampoline=no], [perf_trampoline=yes