Messages in this thread Patch in this message | | | Date | Mon, 6 Jun 2011 17:10:24 +0200 | From | Stephane Eranian <> | Subject | [PATCH] perf: fix missing event name init for default event |
| |
When no event is given to perf record, perf top, a default event is initialized (cycles). However, perf_evlist__add_default() was not setting the symbolic name for the event. Perf top worked simply because it was reconstructing the name from the event code. But it should not have to do this. This patch initializes the evsel->name field properly.
Signed-off-by: Stephane Eranian <eranian@google.com> ---
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c index b021ea9..1584af6 100644 --- a/tools/perf/util/evlist.c +++ b/tools/perf/util/evlist.c @@ -87,6 +87,13 @@ int perf_evlist__add_default(struct perf_evlist *evlist) if (evsel == NULL) return -ENOMEM; + /* use strdup() because free(evsel) assumes name is allocated */ + evsel->name = strdup("cycles"); + if (!evsel->name) { + free(evsel); + return -ENOMEM; + } + perf_evlist__add(evlist, evsel); return 0; }
| |