diff --git a/tools/perf/builtin-mem.c b/tools/perf/builtin-mem.c index f1fa7b8d1f6949f23383482f88a6fad178d05d2c..88aeac9aa1da12c664ec64ee419d6ce48c5ad8ec 100644 --- a/tools/perf/builtin-mem.c +++ b/tools/perf/builtin-mem.c @@ -43,7 +43,7 @@ static int parse_record_events(const struct option *opt, fprintf(stderr, "%-13s%-*s%s\n", e->tag, verbose ? 25 : 0, - verbose ? e->name : "", + verbose ? perf_mem_events__name(j) : "", e->supported ? ": available" : ""); } exit(0); @@ -95,12 +95,12 @@ static int __cmd_record(int argc, const char **argv, struct perf_mem *mem) if (!perf_mem_events[j].supported) { pr_err("failed: event '%s' not supported\n", - perf_mem_events[j].name); + perf_mem_events__name(j)); return -1; } rec_argv[i++] = "-e"; - rec_argv[i++] = perf_mem_events[j].name; + rec_argv[i++] = perf_mem_events__name(j); }; for (j = 0; j < argc; j++, i++) diff --git a/tools/perf/util/mem-events.c b/tools/perf/util/mem-events.c index e21853fe1312ce1bc5dcfe1529cb44708ee73913..2330db510976ea57d506f203a7de594073234c77 100644 --- a/tools/perf/util/mem-events.c +++ b/tools/perf/util/mem-events.c @@ -19,6 +19,11 @@ struct perf_mem_event perf_mem_events[PERF_MEM_EVENTS__MAX] = { #undef E +char *perf_mem_events__name(int i) +{ + return (char *)perf_mem_events[i].name; +} + int perf_mem_events__parse(const char *str) { char *tok, *saveptr = NULL; diff --git a/tools/perf/util/mem-events.h b/tools/perf/util/mem-events.h index 75c1660bda627cdbe3069735cb7b8c4714553a22..2a91b959de6272222a7bbb17843970a0cf9e617a 100644 --- a/tools/perf/util/mem-events.h +++ b/tools/perf/util/mem-events.h @@ -22,4 +22,5 @@ extern struct perf_mem_event perf_mem_events[PERF_MEM_EVENTS__MAX]; int perf_mem_events__parse(const char *str); int perf_mem_events__init(void); +char *perf_mem_events__name(int i); #endif /* __PERF_MEM_EVENTS_H */