Em Thu, Dec 07, 2017 at 09:27:58AM +0100, Hendrik Brueckner escreveu: > With the perf trace command you can specify system calls with wildcards. > To support this on s390, a system call table must be provided to perf. > Provide a script to create the perf system call table based on the defines > in arch/s390/include/uapi/asm/unistd.h (copied to tools/arch/s390/...). > > Note that the first patch can be applied independent of the second and > third patch. In case they need further discussion, please consider to > integrate the first one. > > The second and third patches complete the work to remove the audit library > dependency for perf trace when an architecture supports system call tables. > > Inspired by the generation of the system call tables, create a similar > approach to generate errno name mappings. Introduce the errno_to_name() > function to replace audit_errno_to_name() in perf trace. The third > patch changes the build process to build and run perf trace without > requiring the audit library anymore (for those architectures that have > system call table support). Excellent! I'm reviewing this now, will take care of that fixup. This should make the goal of doing a 'perf trace -i perf.data.from.other.arch' Use the right conversion tables, allowing for instance to get a perf.data file generated by 'perf trace record' and have it decoded properly on a machine of a different arch, i.e. record on s390, use 'perf trace -i' to decoded it on x86_64 :-) - Arnaldo > Note: The patch set is based on the linux master branch (968edbd93c0cbb). Please try this in the future using my perf/core branch, where bleeding edge stuff gets developed, I'll see if something doesn't apply. - Arnaldo > > Hendrik Brueckner (3): > perf s390: generate system call table from asm/unistd.h > perf: introduce errno_to_name() function > perf trace: no longer require auditlibs if syscall tables are present > > tools/arch/s390/include/uapi/asm/unistd.h | 412 +++++++++++++++++++++++ > tools/perf/.gitignore | 1 + > tools/perf/Makefile.config | 22 +- > tools/perf/Makefile.perf | 12 +- > tools/perf/arch/s390/Makefile | 21 ++ > tools/perf/arch/s390/entry/syscalls/mksyscalltbl | 36 ++ > tools/perf/builtin-help.c | 2 +- > tools/perf/builtin-trace.c | 17 +- > tools/perf/check-headers.sh | 1 + > tools/perf/perf.c | 4 +- > tools/perf/util/generate-cmdlist.sh | 2 +- > tools/perf/util/generate-errno-names.sh | 32 ++ > tools/perf/util/syscalltbl.c | 4 + > 13 files changed, 553 insertions(+), 13 deletions(-) > create mode 100644 tools/arch/s390/include/uapi/asm/unistd.h > create mode 100755 tools/perf/arch/s390/entry/syscalls/mksyscalltbl > create mode 100755 tools/perf/util/generate-errno-names.sh > > -- > 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html