ACK: [SRU][Q][PATCH 0/1] Race condition in perf build causes build failure due to missing unistd_64.h header on arm64
Philip Cox
philip.cox at canonical.com
Mon Nov 24 17:30:12 UTC 2025
On 2025-11-21 5:34 p.m., Jacob Martin wrote:
> BugLink: https://bugs.launchpad.net/bugs/2131702
>
> [Impact]
>
> ARM64 builds of questing-derived kernels can fail with the following
> error during the binary-perarch build target:
>
> In file included from /usr/include/aarch64-linux-gnu/sys/syscall.h:24,
> from /usr/include/syscall.h:1,
> from jvmti/jvmti_agent.c:36:
> /<<PKGBUILDDIR>>/debian/build/tools-perarch/tools/arch/arm64/include/uapi/asm/unistd.h:2:10: fatal error: asm/unistd_64.h: No such file or directory
> 2 | #include <asm/unistd_64.h>
> |
>
> This is caused by a dependency missing from the libjvmti perf build
> target.
>
> [Fix]
>
> Upstream commit f3b601f ("perf tools: Fix arm64 libjvmti build by
> generating unistd_64.h") resolves the build issue.
>
> This commit is included in 6.18-rc1 and newer.
>
> The break commit 22f72088ffe69a37 ("tools headers: Update the syscall
> table with the kernel sources") is not present in plucky and older
> kernels.
>
> [Test Plan]
>
> This issue was occuring reliably in linux-nvidia-6.17 when building the
> debian/rules binary-perarch target on arm64. After applying this patch,
> the issue was resolved on 5/5 subsequent test builds.
>
> I tested the binary-perarch build for questing:linux with this patch on
> an arm64 system with the following, and it was successful:
> $ fakeroot debian/rules clean binary-perarch
>
> [Regression Potential]
>
> Any regressions should show up at build time, as the fix involves only
> changes to the perf tool build script.
>
> Vincent Minet (1):
> perf tools: Fix arm64 libjvmti build by generating unistd_64.h
Acked-by: Philip Cox <philip.cox at canonical.com>
> tools/perf/Makefile.perf | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
More information about the kernel-team
mailing list