Messages in this thread | | | Date | Wed, 29 Jul 2015 12:12:46 -0300 | From | Arnaldo Carvalho de Melo <> | 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@intel.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
| |