[SRU][Q][PATCH 0/1] Race condition in perf build causes build failure due to missing unistd_64.h header on arm64
Jacob Martin
jacob.martin at canonical.com
Fri Nov 21 22:34:14 UTC 2025
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
tools/perf/Makefile.perf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--
2.43.0
More information about the kernel-team
mailing list