mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-04-18 10:23:08 +02:00
2f4847b5d6
An evsel idx may not be stable due to sorting, evlist removal, etc. Avoid use of the idx where the evsel itself can be used to avoid these problems. This removed 1 values array and duplicated evsel name strings. Reviewed-by: James Clark <james.clark@linaro.org> Reviewed-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Ian Rogers <irogers@google.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Chen Ni <nichen@iscas.ac.cn> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: https://lore.kernel.org/r/20241114230713.330701-3-irogers@google.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
31 lines
676 B
C
31 lines
676 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef __PERF_VALUES_H
|
|
#define __PERF_VALUES_H
|
|
|
|
#include <stdio.h>
|
|
#include <linux/types.h>
|
|
|
|
struct evsel;
|
|
|
|
struct perf_read_values {
|
|
int threads;
|
|
int threads_max;
|
|
u32 *pid, *tid;
|
|
int num_counters;
|
|
int counters_max;
|
|
struct evsel **counters;
|
|
u64 **value;
|
|
};
|
|
|
|
int perf_read_values_init(struct perf_read_values *values);
|
|
void perf_read_values_destroy(struct perf_read_values *values);
|
|
|
|
int perf_read_values_add_value(struct perf_read_values *values,
|
|
u32 pid, u32 tid,
|
|
struct evsel *evsel, u64 value);
|
|
|
|
void perf_read_values_display(FILE *fp, struct perf_read_values *values,
|
|
int raw);
|
|
|
|
#endif /* __PERF_VALUES_H */
|