diff options
Diffstat (limited to 'tools/perf/builtin-test.c')
| -rw-r--r-- | tools/perf/builtin-test.c | 30 | 
1 files changed, 30 insertions, 0 deletions
diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c index 1c5b9801ac6..223ffdcc0fd 100644 --- a/tools/perf/builtin-test.c +++ b/tools/perf/builtin-test.c @@ -851,6 +851,28 @@ static int test__checkevent_symbolic_name_modifier(struct perf_evlist *evlist)  	return test__checkevent_symbolic_name(evlist);  } +static int test__checkevent_exclude_host_modifier(struct perf_evlist *evlist) +{ +	struct perf_evsel *evsel = list_entry(evlist->entries.next, +					      struct perf_evsel, node); + +	TEST_ASSERT_VAL("wrong exclude guest", !evsel->attr.exclude_guest); +	TEST_ASSERT_VAL("wrong exclude host", evsel->attr.exclude_host); + +	return test__checkevent_symbolic_name(evlist); +} + +static int test__checkevent_exclude_guest_modifier(struct perf_evlist *evlist) +{ +	struct perf_evsel *evsel = list_entry(evlist->entries.next, +					      struct perf_evsel, node); + +	TEST_ASSERT_VAL("wrong exclude guest", evsel->attr.exclude_guest); +	TEST_ASSERT_VAL("wrong exclude host", !evsel->attr.exclude_host); + +	return test__checkevent_symbolic_name(evlist); +} +  static int test__checkevent_symbolic_alias_modifier(struct perf_evlist *evlist)  {  	struct perf_evsel *evsel = list_entry(evlist->entries.next, @@ -1091,6 +1113,14 @@ static struct test__event_st {  		.name  = "r1,syscalls:sys_enter_open:k,1:1:hp",  		.check = test__checkevent_list,  	}, +	{ +		.name  = "instructions:G", +		.check = test__checkevent_exclude_host_modifier, +	}, +	{ +		.name  = "instructions:H", +		.check = test__checkevent_exclude_guest_modifier, +	},  };  #define TEST__EVENTS_CNT (sizeof(test__events) / sizeof(struct test__event_st))  |