perf tools: Remove __event_name

Not needed anymore, the parsing code can just leave evsel->name as NULL
and the first call to perf_evsel__name() will do exactly what was being
pre-cached using __event_name().

Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-cn2eiijcinnc97buod8cs34m@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 22c8b843
...@@ -161,24 +161,6 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config) ...@@ -161,24 +161,6 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config)
return NULL; return NULL;
} }
#define TP_PATH_LEN (MAX_EVENT_LENGTH * 2 + 1)
static const char *tracepoint_id_to_name(u64 config)
{
static char buf[TP_PATH_LEN];
struct tracepoint_path *path;
path = tracepoint_id_to_path(config);
if (path) {
snprintf(buf, TP_PATH_LEN, "%s:%s", path->system, path->name);
free(path->name);
free(path->system);
free(path);
} else
snprintf(buf, TP_PATH_LEN, "%s:%s", "unknown", "unknown");
return buf;
}
const char *event_type(int type) const char *event_type(int type)
{ {
switch (type) { switch (type) {
...@@ -201,36 +183,6 @@ const char *event_type(int type) ...@@ -201,36 +183,6 @@ const char *event_type(int type)
return "unknown"; return "unknown";
} }
const char *__event_name(int type, u64 config)
{
static char buf[32];
if (type == PERF_TYPE_RAW) {
sprintf(buf, "raw 0x%" PRIx64, config);
return buf;
}
switch (type) {
case PERF_TYPE_HARDWARE:
return __perf_evsel__hw_name(config);
case PERF_TYPE_HW_CACHE:
__perf_evsel__hw_cache_name(config, buf, sizeof(buf));
return buf;
case PERF_TYPE_SOFTWARE:
return __perf_evsel__sw_name(config);
case PERF_TYPE_TRACEPOINT:
return tracepoint_id_to_name(config);
default:
break;
}
return "unknown";
}
static int add_event(struct list_head **_list, int *idx, static int add_event(struct list_head **_list, int *idx,
struct perf_event_attr *attr, char *name) struct perf_event_attr *attr, char *name)
{ {
...@@ -252,7 +204,8 @@ static int add_event(struct list_head **_list, int *idx, ...@@ -252,7 +204,8 @@ static int add_event(struct list_head **_list, int *idx,
return -ENOMEM; return -ENOMEM;
} }
evsel->name = strdup(name); if (name)
evsel->name = strdup(name);
list_add_tail(&evsel->node, list); list_add_tail(&evsel->node, list);
*_list = list; *_list = list;
return 0; return 0;
...@@ -545,8 +498,7 @@ int parse_events_add_numeric(struct list_head **list, int *idx, ...@@ -545,8 +498,7 @@ int parse_events_add_numeric(struct list_head **list, int *idx,
config_attr(&attr, head_config, 1)) config_attr(&attr, head_config, 1))
return -EINVAL; return -EINVAL;
return add_event(list, idx, &attr, return add_event(list, idx, &attr, NULL);
(char *) __event_name(type, config));
} }
static int parse_events__is_name_term(struct parse_events__term *term) static int parse_events__is_name_term(struct parse_events__term *term)
...@@ -554,8 +506,7 @@ static int parse_events__is_name_term(struct parse_events__term *term) ...@@ -554,8 +506,7 @@ static int parse_events__is_name_term(struct parse_events__term *term)
return term->type_term == PARSE_EVENTS__TERM_TYPE_NAME; return term->type_term == PARSE_EVENTS__TERM_TYPE_NAME;
} }
static char *pmu_event_name(struct perf_event_attr *attr, static char *pmu_event_name(struct list_head *head_terms)
struct list_head *head_terms)
{ {
struct parse_events__term *term; struct parse_events__term *term;
...@@ -563,7 +514,7 @@ static char *pmu_event_name(struct perf_event_attr *attr, ...@@ -563,7 +514,7 @@ static char *pmu_event_name(struct perf_event_attr *attr,
if (parse_events__is_name_term(term)) if (parse_events__is_name_term(term))
return term->val.str; return term->val.str;
return (char *) __event_name(PERF_TYPE_RAW, attr->config); return NULL;
} }
int parse_events_add_pmu(struct list_head **list, int *idx, int parse_events_add_pmu(struct list_head **list, int *idx,
...@@ -588,7 +539,7 @@ int parse_events_add_pmu(struct list_head **list, int *idx, ...@@ -588,7 +539,7 @@ int parse_events_add_pmu(struct list_head **list, int *idx,
return -EINVAL; return -EINVAL;
return add_event(list, idx, &attr, return add_event(list, idx, &attr,
pmu_event_name(&attr, head_config)); pmu_event_name(head_config));
} }
void parse_events_update_lists(struct list_head *list_event, void parse_events_update_lists(struct list_head *list_event,
......
...@@ -26,7 +26,6 @@ extern struct tracepoint_path *tracepoint_id_to_path(u64 config); ...@@ -26,7 +26,6 @@ extern struct tracepoint_path *tracepoint_id_to_path(u64 config);
extern bool have_tracepoints(struct list_head *evlist); extern bool have_tracepoints(struct list_head *evlist);
const char *event_type(int type); const char *event_type(int type);
extern const char *__event_name(int type, u64 config);
extern int parse_events_option(const struct option *opt, const char *str, extern int parse_events_option(const struct option *opt, const char *str,
int unset); int unset);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment