From 034f24aa4b2f4f36e4c0bade2c3c46b95250cdfc Mon Sep 17 00:00:00 2001 From: Xiaowei Lu Date: Fri, 10 Jul 2026 03:17:40 +0800 Subject: [PATCH] gh-152769: Enable perf trampoline on musl (Alpine Linux) (#152774) (cherry picked from commit b9e8979dcd563ee913c66802c8544aa050fda2d5) --- .../next/Build/2026-07-01-17-53-00.gh-issue-152769.Kp7mQ2.rst | 4 ++++ configure | 4 ++++ configure.ac | 2 ++ 3 files changed, 10 insertions(+) create mode 100644 Misc/NEWS.d/next/Build/2026-07-01-17-53-00.gh-issue-152769.Kp7mQ2.rst 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 000000000000000..04a6ef4f5e0a7f8 --- /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 b24bb35148beee1..90f026976d0e54c 100755 --- a/configure +++ b/configure @@ -14431,6 +14431,10 @@ case $PLATFORM_TRIPLET in #( perf_trampoline=yes ;; #( aarch64-linux-gnu) : perf_trampoline=yes ;; #( + x86_64-linux-gnu) : + perf_trampoline=yes ;; #( + x86_64-linux-musl) : + perf_trampoline=yes ;; #( darwin) : case $MACOSX_DEPLOYMENT_TARGET in #( 10.[0-9]|10.1[0-1]) : diff --git a/configure.ac b/configure.ac index 09a985dc9ce0d7d..bdb94d6d2803383 100644 --- a/configure.ac +++ b/configure.ac @@ -3873,6 +3873,8 @@ AC_MSG_CHECKING([perf trampoline]) AS_CASE([$PLATFORM_TRIPLET], [x86_64-linux-gnu], [perf_trampoline=yes], [aarch64-linux-gnu], [perf_trampoline=yes], + [x86_64-linux-gnu], [perf_trampoline=yes], + [x86_64-linux-musl], [perf_trampoline=yes], [darwin], [AS_CASE([$MACOSX_DEPLOYMENT_TARGET], [[10.[0-9]|10.1[0-1]]], [perf_trampoline=no], [perf_trampoline=yes]