Messages in this thread Patch in this message | | | From | Ravi Bangoria <> | Subject | [PATCH v2 12/14] perf mem/c2c: Avoid printing empty lines for unsupported events | Date | Thu, 16 Jun 2022 17:22:05 +0530 |
| |
Perf mem and c2c can be used with 3 different events: load, store and combined load-store. Some architectures might support only partial set of events in which case, perf prints empty line for unsupported events. Avoid that.
Ex, AMD Zen cpus supports only combined load-store event and does not support individual load store events.
Before patch: $ ./perf mem record -e list
mem-ldst : available
After patch: $ ./perf mem record -e list mem-ldst : available
Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com> --- tools/perf/util/mem-events.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/tools/perf/util/mem-events.c b/tools/perf/util/mem-events.c index 4a55cdd51bba..91db7a0e2da6 100644 --- a/tools/perf/util/mem-events.c +++ b/tools/perf/util/mem-events.c @@ -156,11 +156,12 @@ void perf_mem_events__list(void) for (j = 0; j < PERF_MEM_EVENTS__MAX; j++) { struct perf_mem_event *e = perf_mem_events__ptr(j); - fprintf(stderr, "%-13s%-*s%s\n", - e->tag ?: "", - verbose > 0 ? 25 : 0, - verbose > 0 ? perf_mem_events__name(j, NULL) : "", - e->supported ? ": available" : ""); + fprintf(stderr, "%-*s%-*s%s", + e->tag ? 13 : 0, + e->tag ? : "", + e->tag && verbose > 0 ? 25 : 0, + e->tag && verbose > 0 ? perf_mem_events__name(j, NULL) : "", + e->supported ? ": available\n" : ""); } } -- 2.31.1
| |