Lines Matching defs:counter
276 static void zero_per_pkg(struct evsel *counter)
278 if (counter->per_pkg_mask)
279 memset(counter->per_pkg_mask, 0, cpu__max_cpu());
282 static int check_per_pkg(struct evsel *counter,
285 unsigned long *mask = counter->per_pkg_mask;
286 struct perf_cpu_map *cpus = evsel__cpus(counter);
291 if (!counter->per_pkg)
302 counter->per_pkg_mask = mask;
334 pr_err("failed to read per-pkg counter\n");
378 struct evsel *counter)
380 int nthreads = perf_thread_map__nr(counter->core.threads);
381 int ncpus = evsel__nr_cpus(counter);
384 if (counter->core.system_wide)
389 if (process_counter_values(config, counter, cpu, thread,
390 perf_counts(counter->counts, cpu, thread)))
399 struct evsel *counter)
401 struct perf_counts_values *aggr = &counter->counts->aggr;
402 struct perf_stat_evsel *ps = counter->stats;
403 u64 *count = counter->counts->aggr.values;
409 * We calculate counter's data every interval,
420 if (counter->per_pkg)
421 zero_per_pkg(counter);
423 ret = process_counter_maps(config, counter);
430 if (!counter->snapshot)
431 evsel__compute_deltas(counter, -1, -1, aggr);
432 perf_counts_values__scale(aggr, config->scale, &counter->counts->scaled);
439 evsel__name(counter), count[0], count[1], count[2]);
445 perf_stat__update_shadow_stats(counter, *count, 0, &rt_stat);
455 struct evsel *counter;
461 counter = perf_evlist__id2evsel(session->evlist, st->id);
462 if (!counter) {
463 pr_err("Failed to resolve counter for stat event.\n");
467 *perf_counts(counter->counts, st->cpu, st->thread) = count;
468 counter->supported = true;