On Thu, Mar 13, 2025 at 04:49:52PM -0300, Arnaldo Carvalho de Melo wrote: > On Thu, Mar 13, 2025 at 12:11:40AM -0700, Namhyung Kim wrote: > > On Fri, Mar 07, 2025 at 04:31:58PM -0800, Ian Rogers wrote: > > > This work builds on the clean up of system call tables and removal of > > > libaudit by Charlie Jenkins <charlie@xxxxxxxxxxxx>. > > > > > > The system call table in perf trace is used to map system call numbers > > > to names and vice versa. Prior to these changes, a single table > > > matching the perf binary's build was present. The table would be > > > incorrect if tracing say a 32-bit binary from a 64-bit version of > > > perf, the names and numbers wouldn't match. > > > > > > Change the build so that a single system call file is built and the > > > potentially multiple tables are identifiable from the ELF machine type > > > of the process being examined. To determine the ELF machine type, the > > > executable's maps are searched and the associated DSOs ELF headers are > > > read. When this fails and when live, /proc/pid/exe's ELF header is > > > read. Fallback to using the perf's binary type when unknown. > > > > Now it works well for me! > > Its working for me on x86_64 as well, I'm doing some more tests, the > container builds and will do 32-bit tracing on 64-bit ARM (rpi5 aarch64) > and then report results here, should be later today as the default > kernel for the rpi5 doesn't come with CONFIG_FTRACE_SYSCALLS=y and BTF, > so building one with it. Still building, but noticed this on x86_64: 105: perf trace enum augmentation tests : FAILED! 106: perf trace BTF general tests : FAILED! 107: perf trace exit race : Ok 108: perf trace record and replay : FAILED! The first doesn´t help that much with verbose mode, haven't checked if before this series it was failing :-\ root@x1:~# perf test -vvv 105 105: perf trace enum augmentation tests: --- start --- test child forked, pid 19411 Checking if vmlinux exists Tracing syscall landlock_add_rule ---- end(-1) ---- 105: perf trace enum augmentation tests : FAILED! root@x1:~# Ditto for 106: root@x1:~# perf test -vv 106 106: perf trace BTF general tests: --- start --- test child forked, pid 19467 Checking if vmlinux BTF exists Testing perf trace's string augmentation Testing perf trace's buffer augmentation Buffer augmentation test failed ---- end(-1) ---- 106: perf trace BTF general tests : FAILED! root@x1:~# 108 works when its the only test: root@x1:~# perf test 108 108: perf trace record and replay : Ok root@x1:~# perf test 108 108: perf trace record and replay : Ok root@x1:~# perf test 108 108: perf trace record and replay : Ok root@x1:~# I'll try to check what is happening with the first two later today. - Arnaldo