lkml.org 
[lkml]   [2012]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patches in this message
/
Date
From
SubjectRe: [PATCH v2 03/16] perf, core: Add a concept of a weightened sample
Em Mon, Nov 05, 2012 at 05:01:47PM -0300, Arnaldo Carvalho de Melo escreveu:
> > +
> > if (sample_type & PERF_SAMPLE_READ)
> > size += event->read_size;
> >
> > @@ -4080,6 +4083,9 @@ void perf_output_sample(struct perf_output_handle *handle,
> > if (sample_type & PERF_SAMPLE_PERIOD)
> > perf_output_put(handle, data->period);
> >
> > + if (sample_type & PERF_SAMPLE_WEIGHT)
> > + perf_output_put(handle, data->weight);
> > +
>
> Yeap, it should go after PERF_SAMPLE_STACK_USER
>
> > if (sample_type & PERF_SAMPLE_READ)
> > perf_output_read(handle, event);
> >

I mean this, on top of the above patch:

diff -u b/kernel/events/core.c b/kernel/events/core.c
--- b/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -4083,9 +4083,6 @@
if (sample_type & PERF_SAMPLE_PERIOD)
perf_output_put(handle, data->period);

- if (sample_type & PERF_SAMPLE_WEIGHT)
- perf_output_put(handle, data->weight);
-
if (sample_type & PERF_SAMPLE_READ)
perf_output_read(handle, event);

@@ -4175,6 +4172,9 @@
perf_output_sample_ustack(handle,
data->stack_user_size,
data->regs_user.regs);
+
+ if (sample_type & PERF_SAMPLE_WEIGHT)
+ perf_output_put(handle, data->weight);
}

void perf_prepare_sample(struct perf_event_header *header,
------------
To match what this patch series will do on a later patch, i.e.
parse the weight at the end of perf_evsel__parse_sample, after
it parses PERF_SAMPLE_READ, PERF_SAMPLE_CALLCHAIN, PERF_SAMPLE_RAW,
PERF_SAMPLE_BRANCH_STACK, PERF_SAMPLE_REGS_USER and
PERF_SAMPLE_STACK_USER:

+++ b/tools/perf/util/evsel.c
@@ -1020,6 +1020,11 @@ int perf_evsel__parse_sample(struct perf_evsel *evsel, union perf_event *event,
}
}

+ if (type & PERF_SAMPLE_WEIGHT) {
+ data->weight= *array;
+ array++;
+ }
+
return 0;
}

- Arnaldo

\
 
 \ /
  Last update: 2012-11-05 21:42    [W:0.254 / U:0.152 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site