linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Adrian Hunter <adrian.hunter@intel.com>
Cc: 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>,
	Namhyung Kim <namhyung@kernel.org>, Leo Yan <leo.yan@linaro.org>,
	Kan Liang <kan.liang@linux.intel.com>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH V2 00/10] perf script: Add API for filtering via dynamically loaded shared object
Date: Thu, 1 Jul 2021 14:40:28 -0300	[thread overview]
Message-ID: <YN3+DLZvPsW6q/l5@kernel.org> (raw)
In-Reply-To: <20210627131818.810-1-adrian.hunter@intel.com>

Em Sun, Jun 27, 2021 at 04:18:08PM +0300, Adrian Hunter escreveu:
> 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.
> 
> 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.

Thanks! applied.

Please consider adding a 'perf test' entry to check if what is produced
is what is expected, also to exercise this code so that we get some
'perf test' segfault if we break something it uses somehow.

- Arnaldo
 
> 
> 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

-- 

- Arnaldo

      parent reply	other threads:[~2021-07-01 17:40 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
2021-07-01 17:40 ` Arnaldo Carvalho de Melo [this message]

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=YN3+DLZvPsW6q/l5@kernel.org \
    --to=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=namhyung@kernel.org \
    --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).