diff options
Diffstat (limited to 'tools/perf/builtin-stat.c')
-rw-r--r-- | tools/perf/builtin-stat.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index a9f06715e44d..784ed6d6e0d6 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c | |||
@@ -61,6 +61,8 @@ | |||
61 | #include <locale.h> | 61 | #include <locale.h> |
62 | 62 | ||
63 | #define DEFAULT_SEPARATOR " " | 63 | #define DEFAULT_SEPARATOR " " |
64 | #define CNTR_NOT_SUPPORTED "<not supported>" | ||
65 | #define CNTR_NOT_COUNTED "<not counted>" | ||
64 | 66 | ||
65 | static struct perf_event_attr default_attrs[] = { | 67 | static struct perf_event_attr default_attrs[] = { |
66 | 68 | ||
@@ -448,6 +450,7 @@ static int run_perf_stat(int argc __used, const char **argv) | |||
448 | if (verbose) | 450 | if (verbose) |
449 | ui__warning("%s event is not supported by the kernel.\n", | 451 | ui__warning("%s event is not supported by the kernel.\n", |
450 | event_name(counter)); | 452 | event_name(counter)); |
453 | counter->supported = false; | ||
451 | continue; | 454 | continue; |
452 | } | 455 | } |
453 | 456 | ||
@@ -466,6 +469,7 @@ static int run_perf_stat(int argc __used, const char **argv) | |||
466 | die("Not all events could be opened.\n"); | 469 | die("Not all events could be opened.\n"); |
467 | return -1; | 470 | return -1; |
468 | } | 471 | } |
472 | counter->supported = true; | ||
469 | } | 473 | } |
470 | 474 | ||
471 | if (perf_evlist__set_filters(evsel_list)) { | 475 | if (perf_evlist__set_filters(evsel_list)) { |
@@ -861,7 +865,7 @@ static void print_counter_aggr(struct perf_evsel *counter) | |||
861 | if (scaled == -1) { | 865 | if (scaled == -1) { |
862 | fprintf(stderr, "%*s%s%*s", | 866 | fprintf(stderr, "%*s%s%*s", |
863 | csv_output ? 0 : 18, | 867 | csv_output ? 0 : 18, |
864 | "<not counted>", | 868 | counter->supported ? CNTR_NOT_COUNTED : CNTR_NOT_SUPPORTED, |
865 | csv_sep, | 869 | csv_sep, |
866 | csv_output ? 0 : -24, | 870 | csv_output ? 0 : -24, |
867 | event_name(counter)); | 871 | event_name(counter)); |
@@ -914,7 +918,8 @@ static void print_counter(struct perf_evsel *counter) | |||
914 | csv_output ? 0 : -4, | 918 | csv_output ? 0 : -4, |
915 | evsel_list->cpus->map[cpu], csv_sep, | 919 | evsel_list->cpus->map[cpu], csv_sep, |
916 | csv_output ? 0 : 18, | 920 | csv_output ? 0 : 18, |
917 | "<not counted>", csv_sep, | 921 | counter->supported ? CNTR_NOT_COUNTED : CNTR_NOT_SUPPORTED, |
922 | csv_sep, | ||
918 | csv_output ? 0 : -24, | 923 | csv_output ? 0 : -24, |
919 | event_name(counter)); | 924 | event_name(counter)); |
920 | 925 | ||