lkml.org 
[lkml]   [2009]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:perfcounters/urgent] perf report: Fix reporting of hypervisor
    Commit-ID:  d8db1b57d31a6b30ea2f0df318eab50fc92b38d6
    Gitweb: http://git.kernel.org/tip/d8db1b57d31a6b30ea2f0df318eab50fc92b38d6
    Author: Anton Blanchard <anton@samba.org>
    AuthorDate: Wed, 1 Jul 2009 09:00:48 +1000
    Committer: Ingo Molnar <mingo@elte.hu>
    CommitDate: Wed, 1 Jul 2009 01:25:20 +0200

    perf report: Fix reporting of hypervisor

    PERF_EVENT_MISC_* is not a bitmask, so we have to mask and compare.

    Signed-off-by: Anton Blanchard <anton@samba.org>
    Cc: a.p.zijlstra@chello.nl
    Cc: paulus@samba.org
    LKML-Reference: <20090630230141.088394681@samba.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>


    ---
    tools/perf/builtin-report.c | 7 +++++--
    1 files changed, 5 insertions(+), 2 deletions(-)

    diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
    index 135b783..88e88c5 100644
    --- a/tools/perf/builtin-report.c
    +++ b/tools/perf/builtin-report.c
    @@ -1213,6 +1213,7 @@ process_sample_event(event_t *event, unsigned long offset, unsigned long head)
    struct map *map = NULL;
    void *more_data = event->ip.__more_data;
    struct ip_callchain *chain = NULL;
    + int cpumode;

    if (sample_type & PERF_SAMPLE_PERIOD) {
    period = *(u64 *)more_data;
    @@ -1256,7 +1257,9 @@ process_sample_event(event_t *event, unsigned long offset, unsigned long head)
    if (comm_list && !strlist__has_entry(comm_list, thread->comm))
    return 0;

    - if (event->header.misc & PERF_EVENT_MISC_KERNEL) {
    + cpumode = event->header.misc & PERF_EVENT_MISC_CPUMODE_MASK;
    +
    + if (cpumode == PERF_EVENT_MISC_KERNEL) {
    show = SHOW_KERNEL;
    level = 'k';

    @@ -1264,7 +1267,7 @@ process_sample_event(event_t *event, unsigned long offset, unsigned long head)

    dprintf(" ...... dso: %s\n", dso->name);

    - } else if (event->header.misc & PERF_EVENT_MISC_USER) {
    + } else if (cpumode == PERF_EVENT_MISC_USER) {

    show = SHOW_USER;
    level = '.';

    \
     
     \ /
      Last update: 2009-07-01 01:35    [W:0.043 / U:1.608 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site