diff options
Diffstat (limited to 'tools/perf/util')
| -rw-r--r-- | tools/perf/util/evsel.c | 10 | ||||
| -rw-r--r-- | tools/perf/util/hist.c | 10 | ||||
| -rw-r--r-- | tools/perf/util/hist.h | 2 | ||||
| -rw-r--r-- | tools/perf/util/session.c | 4 | ||||
| -rw-r--r-- | tools/perf/util/trace-event-parse.c | 2 | 
5 files changed, 16 insertions, 12 deletions
diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index e4262642258..d7915d4e77c 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -34,6 +34,16 @@ int __perf_evsel__sample_size(u64 sample_type)  	return size;  } +static void hists__init(struct hists *hists) +{ +	memset(hists, 0, sizeof(*hists)); +	hists->entries_in_array[0] = hists->entries_in_array[1] = RB_ROOT; +	hists->entries_in = &hists->entries_in_array[0]; +	hists->entries_collapsed = RB_ROOT; +	hists->entries = RB_ROOT; +	pthread_mutex_init(&hists->lock, NULL); +} +  void perf_evsel__init(struct perf_evsel *evsel,  		      struct perf_event_attr *attr, int idx)  { diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c index a36a3fa81ff..abef2703cd2 100644 --- a/tools/perf/util/hist.c +++ b/tools/perf/util/hist.c @@ -1211,13 +1211,3 @@ size_t hists__fprintf_nr_events(struct hists *hists, FILE *fp)  	return ret;  } - -void hists__init(struct hists *hists) -{ -	memset(hists, 0, sizeof(*hists)); -	hists->entries_in_array[0] = hists->entries_in_array[1] = RB_ROOT; -	hists->entries_in = &hists->entries_in_array[0]; -	hists->entries_collapsed = RB_ROOT; -	hists->entries = RB_ROOT; -	pthread_mutex_init(&hists->lock, NULL); -} diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h index c86c1d27bd1..89289c8e935 100644 --- a/tools/perf/util/hist.h +++ b/tools/perf/util/hist.h @@ -63,8 +63,6 @@ struct hists {  	struct callchain_cursor	callchain_cursor;  }; -void hists__init(struct hists *hists); -  struct hist_entry *__hists__add_entry(struct hists *self,  				      struct addr_location *al,  				      struct symbol *parent, u64 period); diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 85c1e6b76f0..0f4555ce906 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -1333,6 +1333,10 @@ int perf_session__cpu_bitmap(struct perf_session *session,  	}  	map = cpu_map__new(cpu_list); +	if (map == NULL) { +		pr_err("Invalid cpu_list\n"); +		return -1; +	}  	for (i = 0; i < map->nr; i++) {  		int cpu = map->map[i]; diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c index 0a7ed5b5e28..6c164dc9ee9 100644 --- a/tools/perf/util/trace-event-parse.c +++ b/tools/perf/util/trace-event-parse.c @@ -1537,6 +1537,8 @@ process_flags(struct event *event, struct print_arg *arg, char **tok)  	field = malloc_or_die(sizeof(*field));  	type = process_arg(event, field, &token); +	while (type == EVENT_OP) +		type = process_op(event, field, &token);  	if (test_type_token(type, token, EVENT_DELIM, ","))  		goto out_free;  |