[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAH0uvogzOruUpPCNXtNReSCtjQUm0AZFrMwjQvQDmym4PmfZhg@mail.gmail.com>
Date: Wed, 26 Feb 2025 21:52:29 -0800
From: Howard Chu <howardchu95@...il.com>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>, Kan Liang <kan.liang@...ux.intel.com>,
Yicong Yang <yangyicong@...ilicon.com>, James Clark <james.clark@...aro.org>,
"Dr. David Alan Gilbert" <linux@...blig.org>, Levi Yun <yeoreum.yun@....com>, Ze Gao <zegao2021@...il.com>,
Weilin Wang <weilin.wang@...el.com>, Xu Yang <xu.yang_2@....com>,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1 00/11] Python improvements for a real use of parse_events
Hello Ian,
Sorry for the late reply—I just recovered from a nasty flu.
perf $ git log --oneline | head -n 11
0c1d18794589 perf python tracepoint: Switch to using parse_events
94dc6574ff24 perf python: Add evlist.config to set up record options
ebc33f96a37d perf python: Add evlist all_cpus accessor
c1ff82e366ee perf python: Avoid duplicated code in get_tracepoint_field
5293474151de perf python: Update ungrouped evsel leader in clone
47f66c784109 perf python: Add optional cpus and threads arguments to
parse_events
d4f592ec635e perf python: Add member access to a number of evsel variables
f4a3006a2c87 perf python: Add evlist enable and disable methods
2e040a422d0a perf evsel: tp_format accessing improvements
d79fd699f99a perf evlist: Add success path to evlist__create_syswide_maps
054b63706989 perf debug: Avoid stack overflow in recursive error message
perf $ sudo python python/tracepoint.py
libperf: mmap_per_cpu: nr cpu values 4 nr threads 1
libperf: idx 0: mmapping fd 3
libperf: idx 1: mmapping fd 4
libperf: idx 2: mmapping fd 5
libperf: idx 3: mmapping fd 6
time 35749194145330 prev_comm=python prev_pid=233668 prev_prio=120
prev_state=0x100 ==> next_comm=migration/0 next_pid=20 next_prio=0
time 35749196508397 prev_comm=python prev_pid=233668 prev_prio=120
prev_state=0x100 ==> next_comm=migration/1 next_pid=25 next_prio=0
time 35749196575872 prev_comm=python prev_pid=233668 prev_prio=120
prev_state=0x100 ==> next_comm=migration/2 next_pid=31 next_prio=0
time 35749194158623 prev_comm=migration/0 prev_pid=20 prev_prio=0
prev_state=0x1 ==> next_comm=swapper/0 next_pid=0 next_prio=120
Worked very well.
On Wed, Jan 8, 2025 at 11:51 PM Ian Rogers <irogers@...gle.com> wrote:
>
> While parse_events access in python was added, it wasn't used by any
> python script. In enabling this for the tracepoint.py script a number
> of latent bugs and necessary improvements were discovered.
>
> Ian Rogers (11):
> perf debug: Avoid stack overflow in recursive error message
> perf evlist: Add success path to evlist__create_syswide_maps
> perf evsel: tp_format accessing improvements
> perf python: Add evlist enable and disable methods
> perf python: Add member access to a number of evsel variables
> perf python: Add optional cpus and threads arguments to parse_events
> perf python: Update ungrouped evsel leader in clone
> perf python: Avoid duplicated code in get_tracepoint_field
> perf python: Add evlist all_cpus accessor
> perf python: Add evlist.config to set up record options
> perf python tracepoint: Switch to using parse_events
Not an expert in this but:
Reviewed-by: Howard Chu <howardchu95@...il.com>
Thanks,
Howard
>
> tools/perf/python/tracepoint.py | 23 +++---
> tools/perf/util/debug.c | 2 +-
> tools/perf/util/evlist.c | 13 ++--
> tools/perf/util/evsel.c | 16 +++-
> tools/perf/util/python.c | 127 ++++++++++++++++++++++++++++----
> 5 files changed, 145 insertions(+), 36 deletions(-)
>
> --
> 2.47.1.613.gc27f4b7a9f-goog
>
Powered by blists - more mailing lists