Commit ee1760e2 authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

perf stat: Move 'metric_only_len' to 'struct perf_stat_config'



Move the static 'metric_only_len' variable to 'struct perf_stat_config',
so that it can be passed around and used outside the 'perf stat' command.

Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20180830063252.23729-29-jolsa@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent d97ae04b
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -176,7 +176,6 @@ static int print_mixed_hw_group_error;
static u64			*walltime_run;
static bool			ru_display			= false;
static struct rusage		ru_data;
static unsigned int		metric_only_len			= METRIC_ONLY_LEN;

struct perf_stat {
	bool			 record;
@@ -200,6 +199,7 @@ static struct perf_stat_config stat_config = {
	.scale		= true,
	.unit_width	= 4, /* strlen("unit") */
	.run_count	= 1,
	.metric_only_len = METRIC_ONLY_LEN,
};

static bool is_duration_time(struct perf_evsel *evsel)
@@ -854,14 +854,14 @@ static const char *fixunit(char *buf, struct perf_evsel *evsel,
	return unit;
}

static void print_metric_only(struct perf_stat_config *config __maybe_unused,
static void print_metric_only(struct perf_stat_config *config,
			      void *ctx, const char *color, const char *fmt,
			      const char *unit, double val)
{
	struct outstate *os = ctx;
	FILE *out = os->fh;
	char buf[1024], str[1024];
	unsigned mlen = metric_only_len;
	unsigned mlen = config->metric_only_len;

	if (!valid_only_metric(unit))
		return;
@@ -902,7 +902,7 @@ static void new_line_metric(struct perf_stat_config *config __maybe_unused,
{
}

static void print_metric_header(struct perf_stat_config *config __maybe_unused,
static void print_metric_header(struct perf_stat_config *config,
				void *ctx, const char *color __maybe_unused,
				const char *fmt __maybe_unused,
				const char *unit, double val __maybe_unused)
@@ -916,7 +916,7 @@ static void print_metric_header(struct perf_stat_config *config __maybe_unused,
	if (config->csv_output)
		fprintf(os->fh, "%s%s", unit, config->csv_sep);
	else
		fprintf(os->fh, "%*s ", metric_only_len, unit);
		fprintf(os->fh, "%*s ", config->metric_only_len, unit);
}

static int first_shadow_cpu(struct perf_evsel *evsel, int id)
+1 −0
Original line number Diff line number Diff line
@@ -99,6 +99,7 @@ struct perf_stat_config {
	unsigned int		 timeout;
	unsigned int		 initial_delay;
	unsigned int		 unit_width;
	unsigned int		 metric_only_len;
	int			 times;
	int			 run_count;
	struct runtime_stat	*stats;