From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnaldo Carvalho de Melo Subject: Re: [PATCH 0/3] perf: generate s390 syscall table and remove auditlibs dependency Date: Thu, 7 Dec 2017 12:29:29 -0300 Message-ID: <20171207152929.GA3173@kernel.org> References: <1512635281-20733-1-git-send-email-brueckner@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mail.kernel.org ([198.145.29.99]:43576 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753109AbdLGP3c (ORCPT ); Thu, 7 Dec 2017 10:29:32 -0500 Content-Disposition: inline In-Reply-To: <1512635281-20733-1-git-send-email-brueckner@linux.vnet.ibm.com> Sender: linux-perf-users-owner@vger.kernel.org List-ID: To: Hendrik Brueckner Cc: Thomas-Mich Richter , Michael Petlan , Jiri Olsa , linux-perf-users@vger.kernel.org, linux-s390@vger.kernel.org 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