Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b27c4ece authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

libperf: Include perf_evsel in evsel object



Including perf_evsel in evsel object, will continue to move other
generic things into libperf's perf_evsel struct.

Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20190721112506.12306-36-jolsa@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 285a30c3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2929,7 +2929,7 @@ static int timehist_check_attr(struct perf_sched *sched,
	struct evsel *evsel;
	struct evsel_runtime *er;

	list_for_each_entry(evsel, &evlist->entries, node) {
	list_for_each_entry(evsel, &evlist->entries, core.node) {
		er = perf_evsel__get_runtime(evsel);
		if (er == NULL) {
			pr_err("Failed to allocate memory for evsel runtime data\n");
+1 −1
Original line number Diff line number Diff line
@@ -2636,7 +2636,7 @@ static bool evlist__add_vfs_getname(struct evlist *evlist)
			continue;
		}

		list_del_init(&evsel->node);
		list_del_init(&evsel->core.node);
		evsel->evlist = NULL;
		evsel__delete(evsel);
	}
+4 −4
Original line number Diff line number Diff line
@@ -3212,7 +3212,7 @@ static void perf_evsel_menu__write(struct ui_browser *browser,
{
	struct evsel_menu *menu = container_of(browser,
						    struct evsel_menu, b);
	struct evsel *evsel = list_entry(entry, struct evsel, node);
	struct evsel *evsel = list_entry(entry, struct evsel, core.node);
	struct hists *hists = evsel__hists(evsel);
	bool current_entry = ui_browser__is_current_entry(browser, row);
	unsigned long nr_events = hists->stats.nr_events[PERF_RECORD_SAMPLE];
@@ -3309,13 +3309,13 @@ static int perf_evsel_menu__run(struct evsel_menu *menu,
			ui_browser__show_title(&menu->b, title);
			switch (key) {
			case K_TAB:
				if (pos->node.next == &evlist->entries)
				if (pos->core.node.next == &evlist->entries)
					pos = perf_evlist__first(evlist);
				else
					pos = perf_evsel__next(pos);
				goto browse_hists;
			case K_UNTAB:
				if (pos->node.prev == &evlist->entries)
				if (pos->core.node.prev == &evlist->entries)
					pos = perf_evlist__last(evlist);
				else
					pos = perf_evsel__prev(pos);
@@ -3351,7 +3351,7 @@ static int perf_evsel_menu__run(struct evsel_menu *menu,
static bool filter_group_entries(struct ui_browser *browser __maybe_unused,
				 void *entry)
{
	struct evsel *evsel = list_entry(entry, struct evsel, node);
	struct evsel *evsel = list_entry(entry, struct evsel, core.node);

	if (symbol_conf.event_group && !perf_evsel__is_group_leader(evsel))
		return true;
+8 −8
Original line number Diff line number Diff line
@@ -119,7 +119,7 @@ static void perf_evlist__purge(struct evlist *evlist)
	struct evsel *pos, *n;

	evlist__for_each_entry_safe(evlist, n, pos) {
		list_del_init(&pos->node);
		list_del_init(&pos->core.node);
		pos->evlist = NULL;
		evsel__delete(pos);
	}
@@ -180,7 +180,7 @@ static void perf_evlist__propagate_maps(struct evlist *evlist)
void evlist__add(struct evlist *evlist, struct evsel *entry)
{
	entry->evlist = evlist;
	list_add_tail(&entry->node, &evlist->entries);
	list_add_tail(&entry->core.node, &evlist->entries);
	entry->idx = evlist->nr_entries;
	entry->tracking = !entry->idx;

@@ -193,7 +193,7 @@ void evlist__add(struct evlist *evlist, struct evsel *entry)
void evlist__remove(struct evlist *evlist, struct evsel *evsel)
{
	evsel->evlist = NULL;
	list_del_init(&evsel->node);
	list_del_init(&evsel->core.node);
	evlist->nr_entries -= 1;
}

@@ -203,7 +203,7 @@ void perf_evlist__splice_list_tail(struct evlist *evlist,
	struct evsel *evsel, *temp;

	__evlist__for_each_entry_safe(list, temp, evsel) {
		list_del_init(&evsel->node);
		list_del_init(&evsel->core.node);
		evlist__add(evlist, evsel);
	}
}
@@ -212,8 +212,8 @@ void __perf_evlist__set_leader(struct list_head *list)
{
	struct evsel *evsel, *leader;

	leader = list_entry(list->next, struct evsel, node);
	evsel = list_entry(list->prev, struct evsel, node);
	leader = list_entry(list->next, struct evsel, core.node);
	evsel = list_entry(list->prev, struct evsel, core.node);

	leader->nr_members = evsel->idx - leader->idx + 1;

@@ -268,7 +268,7 @@ static int evlist__add_attrs(struct evlist *evlist,
		evsel = perf_evsel__new_idx(attrs + i, evlist->nr_entries + i);
		if (evsel == NULL)
			goto out_delete_partial_list;
		list_add_tail(&evsel->node, &head);
		list_add_tail(&evsel->core.node, &head);
	}

	perf_evlist__splice_list_tail(evlist, &head);
@@ -1680,7 +1680,7 @@ void perf_evlist__to_front(struct evlist *evlist,

	evlist__for_each_entry_safe(evlist, n, evsel) {
		if (evsel->leader == move_evsel->leader)
			list_move_tail(&evsel->node, &move);
			list_move_tail(&evsel->core.node, &move);
	}

	list_splice(&move, &evlist->entries);
+6 −6
Original line number Diff line number Diff line
@@ -230,12 +230,12 @@ static inline bool perf_evlist__empty(struct evlist *evlist)

static inline struct evsel *perf_evlist__first(struct evlist *evlist)
{
	return list_entry(evlist->entries.next, struct evsel, node);
	return list_entry(evlist->entries.next, struct evsel, core.node);
}

static inline struct evsel *perf_evlist__last(struct evlist *evlist)
{
	return list_entry(evlist->entries.prev, struct evsel, node);
	return list_entry(evlist->entries.prev, struct evsel, core.node);
}

size_t perf_evlist__fprintf(struct evlist *evlist, FILE *fp);
@@ -253,7 +253,7 @@ void perf_evlist__to_front(struct evlist *evlist,
 * @evsel: struct evsel iterator
 */
#define __evlist__for_each_entry(list, evsel) \
        list_for_each_entry(evsel, list, node)
        list_for_each_entry(evsel, list, core.node)

/**
 * evlist__for_each_entry - iterate thru all the evsels
@@ -269,7 +269,7 @@ void perf_evlist__to_front(struct evlist *evlist,
 * @evsel: struct evsel iterator
 */
#define __evlist__for_each_entry_continue(list, evsel) \
        list_for_each_entry_continue(evsel, list, node)
        list_for_each_entry_continue(evsel, list, core.node)

/**
 * evlist__for_each_entry_continue - continue iteration thru all the evsels
@@ -285,7 +285,7 @@ void perf_evlist__to_front(struct evlist *evlist,
 * @evsel: struct evsel iterator
 */
#define __evlist__for_each_entry_reverse(list, evsel) \
        list_for_each_entry_reverse(evsel, list, node)
        list_for_each_entry_reverse(evsel, list, core.node)

/**
 * evlist__for_each_entry_reverse - iterate thru all the evsels in reverse order
@@ -302,7 +302,7 @@ void perf_evlist__to_front(struct evlist *evlist,
 * @evsel: struct evsel iterator
 */
#define __evlist__for_each_entry_safe(list, tmp, evsel) \
        list_for_each_entry_safe(evsel, tmp, list, node)
        list_for_each_entry_safe(evsel, tmp, list, core.node)

/**
 * evlist__for_each_entry_safe - safely iterate thru all the evsels
Loading