mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 14:42:24 +00:00
perf stat: Remove a set of shadow stats static variables
In previous patches, we have reconstructed the code and let it not access the static variables directly. This patch removes these static variables. Signed-off-by: Jin Yao <yao.jin@linux.intel.com> Acked-by: Jiri Olsa <jolsa@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Kan Liang <kan.liang@intel.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1512482591-4646-7-git-send-email-yao.jin@linux.intel.com [ Rename 'stat' variables to 'st' to build on centos:{5,6} and others where it shadows a global declaration ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
e0128b30db
commit
6a1e2c5c26
@ -16,28 +16,6 @@
|
|||||||
* AGGR_NONE: Use matching CPU
|
* AGGR_NONE: Use matching CPU
|
||||||
* AGGR_THREAD: Not supported?
|
* AGGR_THREAD: Not supported?
|
||||||
*/
|
*/
|
||||||
static struct stats runtime_nsecs_stats[MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_cycles_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_stalled_cycles_front_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_stalled_cycles_back_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_branches_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_cacherefs_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_l1_dcache_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_l1_icache_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_ll_cache_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_itlb_cache_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_dtlb_cache_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_cycles_in_tx_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_transaction_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_elision_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_topdown_total_slots[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_topdown_slots_issued[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_topdown_slots_retired[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_topdown_fetch_bubbles[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_topdown_recovery_bubbles[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_smi_num_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct stats runtime_aperf_stats[NUM_CTX][MAX_NR_CPUS];
|
|
||||||
static struct rblist runtime_saved_values;
|
|
||||||
static bool have_frontend_stalled;
|
static bool have_frontend_stalled;
|
||||||
|
|
||||||
struct runtime_stat rt_stat;
|
struct runtime_stat rt_stat;
|
||||||
@ -163,10 +141,6 @@ void runtime_stat__exit(struct runtime_stat *st)
|
|||||||
void perf_stat__init_shadow_stats(void)
|
void perf_stat__init_shadow_stats(void)
|
||||||
{
|
{
|
||||||
have_frontend_stalled = pmu_have_event("cpu", "stalled-cycles-frontend");
|
have_frontend_stalled = pmu_have_event("cpu", "stalled-cycles-frontend");
|
||||||
rblist__init(&runtime_saved_values);
|
|
||||||
runtime_saved_values.node_cmp = saved_value_cmp;
|
|
||||||
runtime_saved_values.node_new = saved_value_new;
|
|
||||||
runtime_saved_values.node_delete = saved_value_delete;
|
|
||||||
runtime_stat__init(&rt_stat);
|
runtime_stat__init(&rt_stat);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,36 +162,13 @@ static int evsel_context(struct perf_evsel *evsel)
|
|||||||
return ctx;
|
return ctx;
|
||||||
}
|
}
|
||||||
|
|
||||||
void perf_stat__reset_shadow_stats(void)
|
static void reset_stat(struct runtime_stat *st)
|
||||||
{
|
{
|
||||||
|
struct rblist *rblist;
|
||||||
struct rb_node *pos, *next;
|
struct rb_node *pos, *next;
|
||||||
|
|
||||||
memset(runtime_nsecs_stats, 0, sizeof(runtime_nsecs_stats));
|
rblist = &st->value_list;
|
||||||
memset(runtime_cycles_stats, 0, sizeof(runtime_cycles_stats));
|
next = rb_first(&rblist->entries);
|
||||||
memset(runtime_stalled_cycles_front_stats, 0, sizeof(runtime_stalled_cycles_front_stats));
|
|
||||||
memset(runtime_stalled_cycles_back_stats, 0, sizeof(runtime_stalled_cycles_back_stats));
|
|
||||||
memset(runtime_branches_stats, 0, sizeof(runtime_branches_stats));
|
|
||||||
memset(runtime_cacherefs_stats, 0, sizeof(runtime_cacherefs_stats));
|
|
||||||
memset(runtime_l1_dcache_stats, 0, sizeof(runtime_l1_dcache_stats));
|
|
||||||
memset(runtime_l1_icache_stats, 0, sizeof(runtime_l1_icache_stats));
|
|
||||||
memset(runtime_ll_cache_stats, 0, sizeof(runtime_ll_cache_stats));
|
|
||||||
memset(runtime_itlb_cache_stats, 0, sizeof(runtime_itlb_cache_stats));
|
|
||||||
memset(runtime_dtlb_cache_stats, 0, sizeof(runtime_dtlb_cache_stats));
|
|
||||||
memset(runtime_cycles_in_tx_stats, 0,
|
|
||||||
sizeof(runtime_cycles_in_tx_stats));
|
|
||||||
memset(runtime_transaction_stats, 0,
|
|
||||||
sizeof(runtime_transaction_stats));
|
|
||||||
memset(runtime_elision_stats, 0, sizeof(runtime_elision_stats));
|
|
||||||
memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats));
|
|
||||||
memset(runtime_topdown_total_slots, 0, sizeof(runtime_topdown_total_slots));
|
|
||||||
memset(runtime_topdown_slots_retired, 0, sizeof(runtime_topdown_slots_retired));
|
|
||||||
memset(runtime_topdown_slots_issued, 0, sizeof(runtime_topdown_slots_issued));
|
|
||||||
memset(runtime_topdown_fetch_bubbles, 0, sizeof(runtime_topdown_fetch_bubbles));
|
|
||||||
memset(runtime_topdown_recovery_bubbles, 0, sizeof(runtime_topdown_recovery_bubbles));
|
|
||||||
memset(runtime_smi_num_stats, 0, sizeof(runtime_smi_num_stats));
|
|
||||||
memset(runtime_aperf_stats, 0, sizeof(runtime_aperf_stats));
|
|
||||||
|
|
||||||
next = rb_first(&runtime_saved_values.entries);
|
|
||||||
while (next) {
|
while (next) {
|
||||||
pos = next;
|
pos = next;
|
||||||
next = rb_next(pos);
|
next = rb_next(pos);
|
||||||
@ -227,6 +178,17 @@ void perf_stat__reset_shadow_stats(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void perf_stat__reset_shadow_stats(void)
|
||||||
|
{
|
||||||
|
reset_stat(&rt_stat);
|
||||||
|
memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats));
|
||||||
|
}
|
||||||
|
|
||||||
|
void perf_stat__reset_shadow_per_stat(struct runtime_stat *st)
|
||||||
|
{
|
||||||
|
reset_stat(st);
|
||||||
|
}
|
||||||
|
|
||||||
static void update_runtime_stat(struct runtime_stat *st,
|
static void update_runtime_stat(struct runtime_stat *st,
|
||||||
enum stat_type type,
|
enum stat_type type,
|
||||||
int ctx, int cpu, u64 count)
|
int ctx, int cpu, u64 count)
|
||||||
|
@ -128,6 +128,7 @@ void runtime_stat__init(struct runtime_stat *st);
|
|||||||
void runtime_stat__exit(struct runtime_stat *st);
|
void runtime_stat__exit(struct runtime_stat *st);
|
||||||
void perf_stat__init_shadow_stats(void);
|
void perf_stat__init_shadow_stats(void);
|
||||||
void perf_stat__reset_shadow_stats(void);
|
void perf_stat__reset_shadow_stats(void);
|
||||||
|
void perf_stat__reset_shadow_per_stat(struct runtime_stat *st);
|
||||||
void perf_stat__update_shadow_stats(struct perf_evsel *counter, u64 count,
|
void perf_stat__update_shadow_stats(struct perf_evsel *counter, u64 count,
|
||||||
int cpu, struct runtime_stat *st);
|
int cpu, struct runtime_stat *st);
|
||||||
struct perf_stat_output_ctx {
|
struct perf_stat_output_ctx {
|
||||||
|
Loading…
Reference in New Issue
Block a user