Commit 8b48f8ba authored by Ian Rogers's avatar Ian Rogers Committed by Arnaldo Carvalho de Melo

perf report: Name events in stats for pipe mode

In stats mode PERF_RECORD_EVENT_UPDATE isn't being handled meaning the
evsels aren't named when handling pipe mode output.

Before:

  $ perf record -e inst_retired.any -a -o - sleep 0.1|perf report --stats -i -
  ...
  Aggregated stats:
             TOTAL events:      23358
              COMM events:       2608  (11.2%)
              EXIT events:          1  ( 0.0%)
              FORK events:       2607  (11.2%)
            SAMPLE events:        174  ( 0.7%)
             MMAP2 events:      17936  (76.8%)
              ATTR events:          2  ( 0.0%)
    FINISHED_ROUND events:          2  ( 0.0%)
          ID_INDEX events:          1  ( 0.0%)
        THREAD_MAP events:          1  ( 0.0%)
           CPU_MAP events:          1  ( 0.0%)
      EVENT_UPDATE events:          3  ( 0.0%)
         TIME_CONV events:          1  ( 0.0%)
           FEATURE events:         20  ( 0.1%)
     FINISHED_INIT events:          1  ( 0.0%)
  raw 0xc0 stats:
            SAMPLE events:        174

After:

  $ perf record -e inst_retired.any -a -o - sleep 0.1|perf report --stats -i -
  ...
  Aggregated stats:
             TOTAL events:      23742
              COMM events:       2620  (11.0%)
              EXIT events:          2  ( 0.0%)
              FORK events:       2619  (11.0%)
            SAMPLE events:        165  ( 0.7%)
             MMAP2 events:      18304  (77.1%)
              ATTR events:          2  ( 0.0%)
    FINISHED_ROUND events:          2  ( 0.0%)
          ID_INDEX events:          1  ( 0.0%)
        THREAD_MAP events:          1  ( 0.0%)
           CPU_MAP events:          1  ( 0.0%)
      EVENT_UPDATE events:          3  ( 0.0%)
         TIME_CONV events:          1  ( 0.0%)
           FEATURE events:         20  ( 0.1%)
     FINISHED_INIT events:          1  ( 0.0%)
  inst_retired.any stats:
            SAMPLE events:        165

This makes the pipe output match the regular output.
Signed-off-by: default avatarIan Rogers <irogers@google.com>
Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240827212757.1469340-1-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 097fe67d
...@@ -816,6 +816,7 @@ static void stats_setup(struct report *rep) ...@@ -816,6 +816,7 @@ static void stats_setup(struct report *rep)
rep->tool.attr = process_attr; rep->tool.attr = process_attr;
rep->tool.sample = count_sample_event; rep->tool.sample = count_sample_event;
rep->tool.lost_samples = count_lost_samples_event; rep->tool.lost_samples = count_lost_samples_event;
rep->tool.event_update = perf_event__process_event_update;
rep->tool.no_warn = true; rep->tool.no_warn = true;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment