[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aAumWUWXB05qLez6@x1>
Date: Fri, 25 Apr 2025 12:12:25 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
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>,
Athira Rajeev <atrajeev@...ux.ibm.com>,
Kajol Jain <kjain@...ux.ibm.com>, Li Huafei <lihuafei1@...wei.com>,
"Steinar H. Gunderson" <sesse@...gle.com>,
James Clark <james.clark@...aro.org>,
Stephen Brennan <stephen.s.brennan@...cle.com>,
Andi Kleen <ak@...ux.intel.com>, Dmitry Vyukov <dvyukov@...gle.com>,
Zhongqiu Han <quic_zhonhan@...cinc.com>,
Yicong Yang <yangyicong@...ilicon.com>,
Krzysztof Łopatowski <krzysztof.m.lopatowski@...il.com>,
"Dr. David Alan Gilbert" <linux@...blig.org>,
Zixian Cai <fzczx123@...il.com>,
Steve Clevenger <scclevenger@...amperecomputing.com>,
Thomas Falcon <thomas.falcon@...el.com>,
Martin Liska <martin.liska@....com>,
Martin Liška <m.liska@...link.cz>,
Song Liu <song@...nel.org>, linux-perf-users@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 2/8] perf jitdump: Directly mark the jitdump DSO
On Thu, Apr 24, 2025 at 12:58:25PM -0700, Ian Rogers wrote:
> The DSO being generated was being accessed through a thread's maps,
> this is unnecessary as the dso can just be directly found. This avoids
> problems with passing a NULL evsel which may be inspected to determine
> properties of a callchain when using the buildid DSO marking code.
And this patch had to be moved after:
"perf dso: Move build_id to dso_id"
As it uses fields that were introduced there.
Thanks,
- Arnaldo
> Signed-off-by: Ian Rogers <irogers@...gle.com>
> ---
> tools/perf/util/jitdump.c | 21 +++++++++++++++++----
> 1 file changed, 17 insertions(+), 4 deletions(-)
>
> diff --git a/tools/perf/util/jitdump.c b/tools/perf/util/jitdump.c
> index 624964f01b5f..b062b1f234b6 100644
> --- a/tools/perf/util/jitdump.c
> +++ b/tools/perf/util/jitdump.c
> @@ -14,9 +14,9 @@
> #include <sys/mman.h>
> #include <linux/stringify.h>
>
> -#include "build-id.h"
> #include "event.h"
> #include "debug.h"
> +#include "dso.h"
> #include "evlist.h"
> #include "namespaces.h"
> #include "symbol.h"
> @@ -531,9 +531,22 @@ static int jit_repipe_code_load(struct jit_buf_desc *jd, union jr_entry *jr)
> /*
> * mark dso as use to generate buildid in the header
> */
> - if (!ret)
> - build_id__mark_dso_hit(tool, event, &sample, NULL, jd->machine);
> -
> + if (!ret) {
> + struct dso_id dso_id = {
> + {
> + .maj = event->mmap2.maj,
> + .min = event->mmap2.min,
> + .ino = event->mmap2.ino,
> + .ino_generation = event->mmap2.ino_generation,
> + },
> + .mmap2_valid = true,
> + .mmap2_ino_generation_valid = true,
> + };
> + struct dso *dso = machine__findnew_dso_id(jd->machine, filename, &dso_id);
> +
> + if (dso)
> + dso__set_hit(dso);
> + }
> out:
> perf_sample__exit(&sample);
> free(event);
> --
> 2.49.0.850.g28803427d3-goog
Powered by blists - more mailing lists