Messages in this thread Patch in this message |  | | From | Stephane Eranian <> | Subject | [PATCH v4 05/18] perf: add minimal support for PERF_SAMPLE_WEIGHT | Date | Thu, 20 Dec 2012 16:41:35 +0100 |
| |
Ensure we grab the weight from raw sample struct and that we can dump it via perf report -D.
Signed-off-by: Stephane Eranian <eranian@google.com> --- tools/perf/util/event.h | 1 + tools/perf/util/evsel.c | 5 +++++ tools/perf/util/session.c | 3 +++ 3 files changed, 9 insertions(+)
diff --git a/tools/perf/util/event.h b/tools/perf/util/event.h index 0d573ff..cf52977 100644 --- a/tools/perf/util/event.h +++ b/tools/perf/util/event.h @@ -90,6 +90,7 @@ struct perf_sample { u64 period; u32 cpu; u32 raw_size; + u64 weight; void *raw_data; struct ip_callchain *callchain; struct branch_stack *branch_stack; diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index 1b16dd1..4374c07 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -1058,6 +1058,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; } diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index ce6f511..117983e 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -1006,6 +1006,9 @@ static void dump_sample(struct perf_evsel *evsel, union perf_event *event, if (sample_type & PERF_SAMPLE_STACK_USER) stack_user__printf(&sample->user_stack); + + if (sample_type & PERF_SAMPLE_WEIGHT) + printf(" ... weight: %"PRIu64"\n", sample->weight); } static struct machine * -- 1.7.9.5
|  |