[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150729151246.GH575@kernel.org>
Date: Wed, 29 Jul 2015 12:12:46 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Jiri Olsa <jolsa@...hat.com>
Cc: kan.liang@...el.com, a.p.zijlstra@...llo.nl, luto@...nel.org,
mingo@...hat.com, eranian@...gle.com, ak@...ux.intel.com,
mark.rutland@....com, adrian.hunter@...el.com, jolsa@...nel.org,
namhyung@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V3 3/5] perf,tools: Dump per-sample freq/CPU%/CORE_BUSY%
in report -D
Em Wed, Jul 29, 2015 at 02:52:20PM +0200, Jiri Olsa escreveu:
> On Tue, Jul 28, 2015 at 07:29:33AM -0400, kan.liang@...el.com wrote:
>
> SNIP
>
> > -static void dump_sample(struct perf_evsel *evsel, union perf_event *event,
> > +static void dump_sample(struct perf_session *session, struct perf_evlist *evlist,
> > + struct perf_evsel *evsel, union perf_event *event,
> > struct perf_sample *sample)
> > {
> > u64 sample_type;
> > @@ -938,7 +963,7 @@ static void dump_sample(struct perf_evsel *evsel, union perf_event *event,
> > printf("... transaction: %" PRIx64 "\n", sample->transaction);
> >
> > if (sample_type & PERF_SAMPLE_READ)
> > - sample_read__printf(sample, evsel->attr.read_format);
> > + sample_read__printf(session, evlist, sample, evsel->attr.read_format);
> > }
> >
> > static struct machine *machines__find_for_cpumode(struct machines *machines,
> > @@ -1036,12 +1061,13 @@ static int
> > &sample->read.one, machine);
> > }
> >
> > -static int machines__deliver_event(struct machines *machines,
> > +static int machines__deliver_event(struct perf_session *session,
> > struct perf_evlist *evlist,
>
> you can cut the evlist argument as well, because it's always from session->evlist
Well, perf_session is about saving/restoring from a perf.data file, and
there are tools that don't deal with perf.data files.
So I think that this running environment information, that is associated
with the evlist, should be accessible from there, i.e. when reading the
perf.data file you get it from there, when running a live tool, you get
it from the system.
I saw code in this patchkit that reads it from the system and writes it
to the perf.data header, that could sould instead get it into a data
structure accessible from the evlist and when writing a perf.data file,
get it from there.
I.e. trying not to entangle session stuff into places that don't touch
it.
Reading a bit more to see if I can come with more suggestions...
- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists