public inbox for linux-perf-users@vger.kernel.org
 help / color / mirror / Atom feed
* make -C tools/perf build-test failing on aarch64
@ 2025-05-10  1:42 Arnaldo Carvalho de Melo
  2025-05-11 17:46 ` James Clark
  0 siblings, 1 reply; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2025-05-10  1:42 UTC (permalink / raw)
  To: James Clark
  Cc: Harshit Mogalapalli, Namhyung Kim, Adrian Hunter, Ian Rogers,
	Jiri Olsa, Kan Liang, Linux Kernel Mailing List, linux-perf-users

Hi,

	I noticed that upstream is failing on aarch64:

acme@raspberrypi:~/git/perf-tools-next $ uname -a
Linux raspberrypi 6.12.25+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.25-1+rpt1 (2025-04-30) aarch64 GNU/Linux
acme@raspberrypi:~/git/perf-tools-next $ grep -m1 Model /proc/cpuinfo 
Model		: Raspberry Pi 5 Model B Rev 1.1
acme@raspberrypi:~/git/perf-tools-next $ 
acme@raspberrypi:~/git/perf-tools-next $ git log --oneline -1 ; time make -C tools/perf build-test
cd17a9b1a779 (HEAD -> perf-tools-next, number/perf-tools-next, number/HEAD) perf test demangle-ocaml: Switch to using dso__demangle_sym()
make: Entering directory '/home/acme/git/perf-tools-next/tools/perf'
- tarpkg: ./tests/perf-targz-src-pkg .
make[1]: *** [tests/make:351: tarpkg] Error 2
make: *** [Makefile:109: build-test] Error 2
make: Leaving directory '/home/acme/git/perf-tools-next/tools/perf'

real	0m12.130s
user	0m12.653s
sys	0m2.091s
acme@raspberrypi:~/git/perf-tools-next $ 

I noticed that it is using some files from outside tools/, i.e. kernel
files, so I tried adding those (and its dependencies) to the
tools/perf/MANIFEST, but stumbled at this point:

acme@raspberrypi:~/git/perf-tools-next $ git diff
diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST
index 364b55b00b48..3fe627c4b599 100644
--- a/tools/perf/MANIFEST
+++ b/tools/perf/MANIFEST
@@ -28,3 +28,6 @@ scripts/bpf_doc.py
 tools/bpf/bpftool
 kernel/bpf/disasm.c
 kernel/bpf/disasm.h
+scripts/Kbuild.include
+scripts/Makefile.asm-headers
+include/uapi/asm-generic/Kbuild
acme@raspberrypi:~/git/perf-tools-next $

To test it directly:

acme@raspberrypi:~/git/perf-tools-next $ sh -x tools/perf/tests/perf-targz-src-pkg tools/perf 
+ set -e
+ PERF=tools/perf
+ cd tools/perf/../..
+ make perf-targz-src-pkg
  ARCHIVE perf-6.15.0-rc5.tar.gz
+ ls -rt perf-6.15.0-rc5.tar.gz
+ TARBALL=perf-6.15.0-rc5.tar.gz
+ mktemp -d
+ TMP_DEST=/tmp/tmp.wzVpK2Gmvw
+ tar xf perf-6.15.0-rc5.tar.gz -C /tmp/tmp.wzVpK2Gmvw
+ rm -f perf-6.15.0-rc5.tar.gz
+ cd -
+ make -C /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf
make: Entering directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
  BUILD:   Doing 'make -j4' parallel build

Auto-detecting system features:
...                                   libdw: [ on  ]
...                                   glibc: [ on  ]
...                                  libelf: [ on  ]
...                                 libnuma: [ on  ]
...                  numa_num_possible_cpus: [ on  ]
...                                 libperl: [ on  ]
...                               libpython: [ on  ]
...                               libcrypto: [ on  ]
...                             libcapstone: [ on  ]
...                               llvm-perf: [ on  ]
...                                    zlib: [ on  ]
...                                    lzma: [ on  ]
...                               get_cpuid: [ OFF ]
...                                     bpf: [ on  ]
...                                  libaio: [ on  ]
...                                 libzstd: [ on  ]

  PERF_VERSION = 6.15.rc5.gcd17a9b1a779
  GEN     common-cmds.h
  GEN     /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
  CC      jvmti/libjvmti.o
  GEN     perf-archive
  GEN     perf-iostat
  CC      dlfilters/dlfilter-test-api-v0.o
  CC      dlfilters/dlfilter-test-api-v2.o
  CC      dlfilters/dlfilter-show-cycles.o
  CC      jvmti/jvmti_agent.o
  CC      jvmti/libstring.o
  CC      jvmti/libctype.o
  MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/array.o
make[4]: *** No rule to make target '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/arch/arm64/include/generated/uapi/asm/unistd_64.h'.  Stop.
make[3]: *** [Makefile:108: uapi-asm-generic] Error 2
make[2]: *** [Makefile.perf:973: /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/libperf.a] Error 2
make[2]: *** Waiting for unfinished jobs....
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/cpu.h
  MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
  MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/fs.o
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/tracing_path.o
  LD      jvmti/jvmti-in.o
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/cpu.o
  LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/libapi-in.o
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/debug.o
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/debug.h
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io.h
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io_dir.h
  MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/cgroup.o
  CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/str_error_r.o
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fd/array.h
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/fs.h
  INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/tracing_path.h
  INSTALL libapi_headers
  LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/libapi-in.o
  LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi-in.o
  AR      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi.a
make[1]: *** [Makefile.perf:290: sub-make] Error 2
make: *** [Makefile:76: all] Error 2
make: Leaving directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
acme@raspberrypi:~/git/perf-tools-next $

I think this is related to:

commit bfb713ea53c746b07ae69fe97fa9b5388e4f34f9 (perf-tools)
Author: James Clark <james.clark@linaro.org>
Date:   Thu Apr 17 14:55:50 2025 +0100

    perf tools: Fix arm64 build by generating unistd_64.h

Can you please take a look?

Thanks a lot,

- Arnaldo

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: make -C tools/perf build-test failing on aarch64
  2025-05-10  1:42 make -C tools/perf build-test failing on aarch64 Arnaldo Carvalho de Melo
@ 2025-05-11 17:46 ` James Clark
  2025-05-13 10:05   ` James Clark
  0 siblings, 1 reply; 4+ messages in thread
From: James Clark @ 2025-05-11 17:46 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Harshit Mogalapalli, Namhyung Kim, Adrian Hunter, Ian Rogers,
	Jiri Olsa, Kan Liang, Linux Kernel Mailing List, linux-perf-users



On 10/05/2025 2:42 am, Arnaldo Carvalho de Melo wrote:
> Hi,
> 
> 	I noticed that upstream is failing on aarch64:
> 
> acme@raspberrypi:~/git/perf-tools-next $ uname -a
> Linux raspberrypi 6.12.25+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.25-1+rpt1 (2025-04-30) aarch64 GNU/Linux
> acme@raspberrypi:~/git/perf-tools-next $ grep -m1 Model /proc/cpuinfo
> Model		: Raspberry Pi 5 Model B Rev 1.1
> acme@raspberrypi:~/git/perf-tools-next $
> acme@raspberrypi:~/git/perf-tools-next $ git log --oneline -1 ; time make -C tools/perf build-test
> cd17a9b1a779 (HEAD -> perf-tools-next, number/perf-tools-next, number/HEAD) perf test demangle-ocaml: Switch to using dso__demangle_sym()
> make: Entering directory '/home/acme/git/perf-tools-next/tools/perf'
> - tarpkg: ./tests/perf-targz-src-pkg .
> make[1]: *** [tests/make:351: tarpkg] Error 2
> make: *** [Makefile:109: build-test] Error 2
> make: Leaving directory '/home/acme/git/perf-tools-next/tools/perf'
> 
> real	0m12.130s
> user	0m12.653s
> sys	0m2.091s
> acme@raspberrypi:~/git/perf-tools-next $
> 
> I noticed that it is using some files from outside tools/, i.e. kernel
> files, so I tried adding those (and its dependencies) to the
> tools/perf/MANIFEST, but stumbled at this point:
> 
> acme@raspberrypi:~/git/perf-tools-next $ git diff
> diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST
> index 364b55b00b48..3fe627c4b599 100644
> --- a/tools/perf/MANIFEST
> +++ b/tools/perf/MANIFEST
> @@ -28,3 +28,6 @@ scripts/bpf_doc.py
>   tools/bpf/bpftool
>   kernel/bpf/disasm.c
>   kernel/bpf/disasm.h
> +scripts/Kbuild.include
> +scripts/Makefile.asm-headers
> +include/uapi/asm-generic/Kbuild
> acme@raspberrypi:~/git/perf-tools-next $
> 
> To test it directly:
> 
> acme@raspberrypi:~/git/perf-tools-next $ sh -x tools/perf/tests/perf-targz-src-pkg tools/perf
> + set -e
> + PERF=tools/perf
> + cd tools/perf/../..
> + make perf-targz-src-pkg
>    ARCHIVE perf-6.15.0-rc5.tar.gz
> + ls -rt perf-6.15.0-rc5.tar.gz
> + TARBALL=perf-6.15.0-rc5.tar.gz
> + mktemp -d
> + TMP_DEST=/tmp/tmp.wzVpK2Gmvw
> + tar xf perf-6.15.0-rc5.tar.gz -C /tmp/tmp.wzVpK2Gmvw
> + rm -f perf-6.15.0-rc5.tar.gz
> + cd -
> + make -C /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf
> make: Entering directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
>    BUILD:   Doing 'make -j4' parallel build
> 
> Auto-detecting system features:
> ...                                   libdw: [ on  ]
> ...                                   glibc: [ on  ]
> ...                                  libelf: [ on  ]
> ...                                 libnuma: [ on  ]
> ...                  numa_num_possible_cpus: [ on  ]
> ...                                 libperl: [ on  ]
> ...                               libpython: [ on  ]
> ...                               libcrypto: [ on  ]
> ...                             libcapstone: [ on  ]
> ...                               llvm-perf: [ on  ]
> ...                                    zlib: [ on  ]
> ...                                    lzma: [ on  ]
> ...                               get_cpuid: [ OFF ]
> ...                                     bpf: [ on  ]
> ...                                  libaio: [ on  ]
> ...                                 libzstd: [ on  ]
> 
>    PERF_VERSION = 6.15.rc5.gcd17a9b1a779
>    GEN     common-cmds.h
>    GEN     /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
>    CC      jvmti/libjvmti.o
>    GEN     perf-archive
>    GEN     perf-iostat
>    CC      dlfilters/dlfilter-test-api-v0.o
>    CC      dlfilters/dlfilter-test-api-v2.o
>    CC      dlfilters/dlfilter-show-cycles.o
>    CC      jvmti/jvmti_agent.o
>    CC      jvmti/libstring.o
>    CC      jvmti/libctype.o
>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/array.o
> make[4]: *** No rule to make target '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/arch/arm64/include/generated/uapi/asm/unistd_64.h'.  Stop.
> make[3]: *** [Makefile:108: uapi-asm-generic] Error 2
> make[2]: *** [Makefile.perf:973: /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/libperf.a] Error 2
> make[2]: *** Waiting for unfinished jobs....
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/cpu.h
>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/fs.o
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/tracing_path.o
>    LD      jvmti/jvmti-in.o
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/cpu.o
>    LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/libapi-in.o
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/debug.o
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/debug.h
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io.h
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io_dir.h
>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/cgroup.o
>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/str_error_r.o
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fd/array.h
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/fs.h
>    INSTALL /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/tracing_path.h
>    INSTALL libapi_headers
>    LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/libapi-in.o
>    LD      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi-in.o
>    AR      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi.a
> make[1]: *** [Makefile.perf:290: sub-make] Error 2
> make: *** [Makefile:76: all] Error 2
> make: Leaving directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
> acme@raspberrypi:~/git/perf-tools-next $
> 
> I think this is related to:
> 
> commit bfb713ea53c746b07ae69fe97fa9b5388e4f34f9 (perf-tools)
> Author: James Clark <james.clark@linaro.org>
> Date:   Thu Apr 17 14:55:50 2025 +0100
> 
>      perf tools: Fix arm64 build by generating unistd_64.h
> 
> Can you please take a look?
> 
> Thanks a lot,
> 
> - Arnaldo

Hmm yeah looks like it's caused by that. I'm travelling tomorrow but 
I'll try to take a look.

Thanks
James


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: make -C tools/perf build-test failing on aarch64
  2025-05-11 17:46 ` James Clark
@ 2025-05-13 10:05   ` James Clark
  2025-05-13 20:43     ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 4+ messages in thread
From: James Clark @ 2025-05-13 10:05 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Harshit Mogalapalli, Namhyung Kim, Adrian Hunter, Ian Rogers,
	Jiri Olsa, Kan Liang, Linux Kernel Mailing List, linux-perf-users



On 11/05/2025 18:46, James Clark wrote:
> 
> 
> On 10/05/2025 2:42 am, Arnaldo Carvalho de Melo wrote:
>> Hi,
>>
>>     I noticed that upstream is failing on aarch64:
>>
>> acme@raspberrypi:~/git/perf-tools-next $ uname -a
>> Linux raspberrypi 6.12.25+rpt-rpi-2712 #1 SMP PREEMPT Debian 
>> 1:6.12.25-1+rpt1 (2025-04-30) aarch64 GNU/Linux
>> acme@raspberrypi:~/git/perf-tools-next $ grep -m1 Model /proc/cpuinfo
>> Model        : Raspberry Pi 5 Model B Rev 1.1
>> acme@raspberrypi:~/git/perf-tools-next $
>> acme@raspberrypi:~/git/perf-tools-next $ git log --oneline -1 ; time 
>> make -C tools/perf build-test
>> cd17a9b1a779 (HEAD -> perf-tools-next, number/perf-tools-next, 
>> number/HEAD) perf test demangle-ocaml: Switch to using 
>> dso__demangle_sym()
>> make: Entering directory '/home/acme/git/perf-tools-next/tools/perf'
>> - tarpkg: ./tests/perf-targz-src-pkg .
>> make[1]: *** [tests/make:351: tarpkg] Error 2
>> make: *** [Makefile:109: build-test] Error 2
>> make: Leaving directory '/home/acme/git/perf-tools-next/tools/perf'
>>
>> real    0m12.130s
>> user    0m12.653s
>> sys    0m2.091s
>> acme@raspberrypi:~/git/perf-tools-next $
>>
>> I noticed that it is using some files from outside tools/, i.e. kernel
>> files, so I tried adding those (and its dependencies) to the
>> tools/perf/MANIFEST, but stumbled at this point:
>>
>> acme@raspberrypi:~/git/perf-tools-next $ git diff
>> diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST
>> index 364b55b00b48..3fe627c4b599 100644
>> --- a/tools/perf/MANIFEST
>> +++ b/tools/perf/MANIFEST
>> @@ -28,3 +28,6 @@ scripts/bpf_doc.py
>>   tools/bpf/bpftool
>>   kernel/bpf/disasm.c
>>   kernel/bpf/disasm.h
>> +scripts/Kbuild.include
>> +scripts/Makefile.asm-headers
>> +include/uapi/asm-generic/Kbuild
>> acme@raspberrypi:~/git/perf-tools-next $
>>
>> To test it directly:
>>
>> acme@raspberrypi:~/git/perf-tools-next $ sh -x 
>> tools/perf/tests/perf-targz-src-pkg tools/perf
>> + set -e
>> + PERF=tools/perf
>> + cd tools/perf/../..
>> + make perf-targz-src-pkg
>>    ARCHIVE perf-6.15.0-rc5.tar.gz
>> + ls -rt perf-6.15.0-rc5.tar.gz
>> + TARBALL=perf-6.15.0-rc5.tar.gz
>> + mktemp -d
>> + TMP_DEST=/tmp/tmp.wzVpK2Gmvw
>> + tar xf perf-6.15.0-rc5.tar.gz -C /tmp/tmp.wzVpK2Gmvw
>> + rm -f perf-6.15.0-rc5.tar.gz
>> + cd -
>> + make -C /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf
>> make: Entering directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
>>    BUILD:   Doing 'make -j4' parallel build
>>
>> Auto-detecting system features:
>> ...                                   libdw: [ on  ]
>> ...                                   glibc: [ on  ]
>> ...                                  libelf: [ on  ]
>> ...                                 libnuma: [ on  ]
>> ...                  numa_num_possible_cpus: [ on  ]
>> ...                                 libperl: [ on  ]
>> ...                               libpython: [ on  ]
>> ...                               libcrypto: [ on  ]
>> ...                             libcapstone: [ on  ]
>> ...                               llvm-perf: [ on  ]
>> ...                                    zlib: [ on  ]
>> ...                                    lzma: [ on  ]
>> ...                               get_cpuid: [ OFF ]
>> ...                                     bpf: [ on  ]
>> ...                                  libaio: [ on  ]
>> ...                                 libzstd: [ on  ]
>>
>>    PERF_VERSION = 6.15.rc5.gcd17a9b1a779
>>    GEN     common-cmds.h
>>    GEN     
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
>>    CC      jvmti/libjvmti.o
>>    GEN     perf-archive
>>    GEN     perf-iostat
>>    CC      dlfilters/dlfilter-test-api-v0.o
>>    CC      dlfilters/dlfilter-test-api-v2.o
>>    CC      dlfilters/dlfilter-show-cycles.o
>>    CC      jvmti/jvmti_agent.o
>>    CC      jvmti/libstring.o
>>    CC      jvmti/libctype.o
>>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/
>>    CC      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/array.o
>> make[4]: *** No rule to make target 
>> '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/arch/arm64/include/generated/uapi/asm/unistd_64.h'.  Stop.
>> make[3]: *** [Makefile:108: uapi-asm-generic] Error 2
>> make[2]: *** [Makefile.perf:973: 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libperf/libperf.a] Error 2
>> make[2]: *** Waiting for unfinished jobs....
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/cpu.h
>>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/fs.o
>>    CC      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/tracing_path.o
>>    LD      jvmti/jvmti-in.o
>>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/cpu.o
>>    LD      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fd/libapi-in.o
>>    CC      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/debug.o
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/debug.h
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io.h
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/io_dir.h
>>    MKDIR   /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/
>>    CC      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/cgroup.o
>>    CC      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/str_error_r.o
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fd/array.h
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/fs.h
>>    INSTALL 
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/include/api/fs/tracing_path.h
>>    INSTALL libapi_headers
>>    LD      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/fs/libapi-in.o
>>    LD      
>> /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi-in.o
>>    AR      /tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf/libapi/libapi.a
>> make[1]: *** [Makefile.perf:290: sub-make] Error 2
>> make: *** [Makefile:76: all] Error 2
>> make: Leaving directory '/tmp/tmp.wzVpK2Gmvw/perf-6.15.0-rc5/tools/perf'
>> acme@raspberrypi:~/git/perf-tools-next $
>>
>> I think this is related to:
>>
>> commit bfb713ea53c746b07ae69fe97fa9b5388e4f34f9 (perf-tools)
>> Author: James Clark <james.clark@linaro.org>
>> Date:   Thu Apr 17 14:55:50 2025 +0100
>>
>>      perf tools: Fix arm64 build by generating unistd_64.h
>>
>> Can you please take a look?
>>
>> Thanks a lot,
>>
>> - Arnaldo
> 
> Hmm yeah looks like it's caused by that. I'm travelling tomorrow but 
> I'll try to take a look.
> 
> Thanks
> James
> 


Sent the fix, hopefully 3rd time lucky.

I know there is the build-test target but I had let my setup bitrot so I 
wasn't running it. I don't know if you have ever shared any of your 
docker containers that you use for build testing?

I will also try to get that target added to our CI. We're only running a 
normal build and then "perf test" there.

Thanks
James

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: make -C tools/perf build-test failing on aarch64
  2025-05-13 10:05   ` James Clark
@ 2025-05-13 20:43     ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2025-05-13 20:43 UTC (permalink / raw)
  To: James Clark
  Cc: Harshit Mogalapalli, Namhyung Kim, Adrian Hunter, Ian Rogers,
	Jiri Olsa, Kan Liang, Linux Kernel Mailing List, linux-perf-users

On Tue, May 13, 2025 at 11:05:16AM +0100, James Clark wrote:
> On 11/05/2025 18:46, James Clark wrote:
> > On 10/05/2025 2:42 am, Arnaldo Carvalho de Melo wrote:
> > >     I noticed that upstream is failing on aarch64:

<SNIP>

> > > I think this is related to:

> > > commit bfb713ea53c746b07ae69fe97fa9b5388e4f34f9 (perf-tools)
> > > Author: James Clark <james.clark@linaro.org>
> > > Date:   Thu Apr 17 14:55:50 2025 +0100

> > >      perf tools: Fix arm64 build by generating unistd_64.h

> > > Can you please take a look?

> > Hmm yeah looks like it's caused by that. I'm travelling tomorrow but
> > I'll try to take a look.
 
> Sent the fix, hopefully 3rd time lucky.

Thanks a bunch! It seems we will not need a 4th. :-)
 
> I know there is the build-test target but I had let my setup bitrot so I
> wasn't running it. I don't know if you have ever shared any of your docker
> containers that you use for build testing?

I keep them at:

https://github.com/acmel/linux-tools-container-builds

The README should be enough to get you going, if you find some
difficulty, please lemme know.

I use this since forever and made them available at github when Daniel
Bristot started maintaining his tools in the kernels sources, the idea
was for him to also use to test build his tools.

It'll be great if you find them useful and, better, wire it up to some
sort of CI you're using.

It does a subset of what 'make -C tools/perf build-test' does, but the
idea for them is to switch to do the full build-test target and also to
run 'perf test', that would be restricted to whatever perms a the
containers are given.

Nowadays with parallel 'perf test' and it having being polished to work
with less perms, that seems like a worthy goal to pursue.
 
> I will also try to get that target added to our CI. We're only running a
> normal build and then "perf test" there.

That will be really nice of you, wiring up these things so that when I
run it all goes as expected will be great!

- Arnaldo

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-05-13 20:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-10  1:42 make -C tools/perf build-test failing on aarch64 Arnaldo Carvalho de Melo
2025-05-11 17:46 ` James Clark
2025-05-13 10:05   ` James Clark
2025-05-13 20:43     ` Arnaldo Carvalho de Melo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox