diff options
| -rw-r--r-- | tools/perf/builtin-stat.c | 9 | ||||
| -rw-r--r-- | tools/perf/util/evsel.h | 1 | 
2 files changed, 8 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 @@  #include <locale.h>  #define DEFAULT_SEPARATOR	" " +#define CNTR_NOT_SUPPORTED	"<not supported>" +#define CNTR_NOT_COUNTED	"<not counted>"  static struct perf_event_attr default_attrs[] = { @@ -448,6 +450,7 @@ static int run_perf_stat(int argc __used, const char **argv)  				if (verbose)  					ui__warning("%s event is not supported by the kernel.\n",  						    event_name(counter)); +				counter->supported = false;  				continue;  			} @@ -466,6 +469,7 @@ static int run_perf_stat(int argc __used, const char **argv)  			die("Not all events could be opened.\n");  			return -1;  		} +		counter->supported = true;  	}  	if (perf_evlist__set_filters(evsel_list)) { @@ -861,7 +865,7 @@ static void print_counter_aggr(struct perf_evsel *counter)  	if (scaled == -1) {  		fprintf(stderr, "%*s%s%*s",  			csv_output ? 0 : 18, -			"<not counted>", +			counter->supported ? CNTR_NOT_COUNTED : CNTR_NOT_SUPPORTED,  			csv_sep,  			csv_output ? 0 : -24,  			event_name(counter)); @@ -914,7 +918,8 @@ static void print_counter(struct perf_evsel *counter)  				csv_output ? 0 : -4,  				evsel_list->cpus->map[cpu], csv_sep,  				csv_output ? 0 : 18, -				"<not counted>", csv_sep, +				counter->supported ? CNTR_NOT_COUNTED : CNTR_NOT_SUPPORTED, +				csv_sep,  				csv_output ? 0 : -24,  				event_name(counter)); diff --git a/tools/perf/util/evsel.h b/tools/perf/util/evsel.h index 7e9366e4490b..e9a31554e265 100644 --- a/tools/perf/util/evsel.h +++ b/tools/perf/util/evsel.h @@ -61,6 +61,7 @@ struct perf_evsel {  		off_t		id_offset;  	};  	struct cgroup_sel	*cgrp; +	bool 			supported;  };  struct cpu_map; | 
