From: Namhyung Kim <namhyung@kernel.org> To: Adrian Hunter <adrian.hunter@intel.com> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>, Jiri Olsa <jolsa@redhat.com>, Andi Kleen <ak@linux.intel.com>, Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@redhat.com>, Mark Rutland <mark.rutland@arm.com>, Leo Yan <leo.yan@linaro.org>, Kan Liang <kan.liang@linux.intel.com>, linux-perf-users <linux-perf-users@vger.kernel.org>, linux-kernel <linux-kernel@vger.kernel.org> Subject: Re: [PATCH V2 00/10] perf script: Add API for filtering via dynamically loaded shared object Date: Tue, 29 Jun 2021 12:28:24 -0700 [thread overview] Message-ID: <CAM9d7cgoJQgTK8t+9oLPrEUg=7-zkzFefRO=XnPmLcTDdJfHKQ@mail.gmail.com> (raw) In-Reply-To: <20210627131818.810-1-adrian.hunter@intel.com> Hi Adrian, On Sun, Jun 27, 2021 at 6:18 AM Adrian Hunter <adrian.hunter@intel.com> wrote: > > Hi > > In some cases, users want to filter very large amounts of data (e.g. from > AUX area tracing like Intel PT) looking for something specific. While > scripting such as Python can be used, Python is 10 to 20 times slower than > C. So define a C API so that custom filters can be written and loaded. Thanks for your work! I guess we can use this for perf report (and others) to have a custom filter too. Thanks, Namhyung > > This is V2. > > The main patch is patch 1. > > The other patches add more functionality, except for patch 5 which installs > the C API header file. > > > Changes in V2: > perf script: Move filter_cpu() earlier > perf script: Move filtering before scripting > perf script: Share addr_al between functions > Dropped because they have now been applied. > > perf script: Add API for filtering via dynamically loaded shared object > Move 2 members of struct perf_dlfilter_sample > Add 'ctx' as an argument to 'start' and 'stop' > Find dlfilter .so files in current directory or exec-path/dlfilters > > perf script: Add option to list dlfilters > New patch > > perf script: Add option to pass arguments to dlfilters > New patch > > > Adrian Hunter (10): > perf script: Add API for filtering via dynamically loaded shared object > perf script: Add dlfilter__filter_event_early() > perf script: Add option to list dlfilters > perf script: Add option to pass arguments to dlfilters > perf build: Install perf_dlfilter.h > perf dlfilter: Add resolve_address() to perf_dlfilter_fns > perf dlfilter: Add insn() to perf_dlfilter_fns > perf dlfilter: Add srcline() to perf_dlfilter_fns > perf dlfilter: Add attr() to perf_dlfilter_fns > perf dlfilter: Add object_code() to perf_dlfilter_fns > > tools/perf/Documentation/perf-dlfilter.txt | 251 ++++++++++++ > tools/perf/Documentation/perf-script.txt | 15 +- > tools/perf/Makefile.config | 3 + > tools/perf/Makefile.perf | 4 +- > tools/perf/builtin-script.c | 86 +++- > tools/perf/util/Build | 1 + > tools/perf/util/dlfilter.c | 615 +++++++++++++++++++++++++++++ > tools/perf/util/dlfilter.h | 97 +++++ > tools/perf/util/perf_dlfilter.h | 150 +++++++ > 9 files changed, 1211 insertions(+), 11 deletions(-) > create mode 100644 tools/perf/Documentation/perf-dlfilter.txt > create mode 100644 tools/perf/util/dlfilter.c > create mode 100644 tools/perf/util/dlfilter.h > create mode 100644 tools/perf/util/perf_dlfilter.h > > > Regards > Adrian
next prev parent reply other threads:[~2021-06-29 19:28 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-27 13:18 Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 01/10] " Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 02/10] perf script: Add dlfilter__filter_event_early() Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 03/10] perf script: Add option to list dlfilters Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 04/10] perf script: Add option to pass arguments to dlfilters Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 05/10] perf build: Install perf_dlfilter.h Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 06/10] perf dlfilter: Add resolve_address() to perf_dlfilter_fns Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 07/10] perf dlfilter: Add insn() " Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 08/10] perf dlfilter: Add srcline() " Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 09/10] perf dlfilter: Add attr() " Adrian Hunter 2021-06-27 13:18 ` [PATCH V2 10/10] perf dlfilter: Add object_code() " Adrian Hunter 2021-06-27 16:13 ` [PATCH V2 00/10] perf script: Add API for filtering via dynamically loaded shared object Andi Kleen 2021-06-28 7:23 ` Adrian Hunter 2021-06-28 14:57 ` Andi Kleen 2021-06-28 19:30 ` Adrian Hunter 2021-06-29 19:28 ` Namhyung Kim [this message] 2021-07-01 17:40 ` Arnaldo Carvalho de Melo
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='CAM9d7cgoJQgTK8t+9oLPrEUg=7-zkzFefRO=XnPmLcTDdJfHKQ@mail.gmail.com' \ --to=namhyung@kernel.org \ --cc=acme@kernel.org \ --cc=adrian.hunter@intel.com \ --cc=ak@linux.intel.com \ --cc=jolsa@redhat.com \ --cc=kan.liang@linux.intel.com \ --cc=leo.yan@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-perf-users@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=mingo@redhat.com \ --cc=peterz@infradead.org \ --subject='Re: [PATCH V2 00/10] perf script: Add API for filtering via dynamically loaded shared object' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).