linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing
@ 2012-04-17 11:13 Gleb Natapov
  2012-04-17 11:25 ` Jiri Olsa
  2012-04-25 13:49 ` [tip:perf/urgent] " tip-bot for Gleb Natapov
  0 siblings, 2 replies; 4+ messages in thread
From: Gleb Natapov @ 2012-04-17 11:13 UTC (permalink / raw)
  To: acme; +Cc: a.p.zijlstra, mingo, jolsa, linux-kernel, avi

They were dropped during conversion of event parser. Add test case to
make sure this will not happen again.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c
index 1c5b980..223ffdc 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))
diff --git a/tools/perf/util/parse-events.l b/tools/perf/util/parse-events.l
index 05d766e..1fcf1bb 100644
--- a/tools/perf/util/parse-events.l
+++ b/tools/perf/util/parse-events.l
@@ -54,7 +54,7 @@ num_dec		[0-9]+
 num_hex		0x[a-fA-F0-9]+
 num_raw_hex	[a-fA-F0-9]+
 name		[a-zA-Z_*?][a-zA-Z0-9_*?]*
-modifier_event	[ukhp]{1,5}
+modifier_event	[ukhpGH]{1,8}
 modifier_bp	[rwx]
 
 %%
--
			Gleb.

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing
  2012-04-17 11:13 [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing Gleb Natapov
@ 2012-04-17 11:25 ` Jiri Olsa
  2012-04-17 14:35   ` Arnaldo Carvalho de Melo
  2012-04-25 13:49 ` [tip:perf/urgent] " tip-bot for Gleb Natapov
  1 sibling, 1 reply; 4+ messages in thread
From: Jiri Olsa @ 2012-04-17 11:25 UTC (permalink / raw)
  To: Gleb Natapov; +Cc: acme, a.p.zijlstra, mingo, linux-kernel, avi

On Tue, Apr 17, 2012 at 02:13:45PM +0300, Gleb Natapov wrote:
> They were dropped during conversion of event parser. Add test case to
> make sure this will not happen again.
> 
> Signed-off-by: Gleb Natapov <gleb@redhat.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>

thanks,
jirka

> diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c
> index 1c5b980..223ffdc 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))
> diff --git a/tools/perf/util/parse-events.l b/tools/perf/util/parse-events.l
> index 05d766e..1fcf1bb 100644
> --- a/tools/perf/util/parse-events.l
> +++ b/tools/perf/util/parse-events.l
> @@ -54,7 +54,7 @@ num_dec		[0-9]+
>  num_hex		0x[a-fA-F0-9]+
>  num_raw_hex	[a-fA-F0-9]+
>  name		[a-zA-Z_*?][a-zA-Z0-9_*?]*
> -modifier_event	[ukhp]{1,5}
> +modifier_event	[ukhpGH]{1,8}
>  modifier_bp	[rwx]
>  
>  %%
> --
> 			Gleb.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing
  2012-04-17 11:25 ` Jiri Olsa
@ 2012-04-17 14:35   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2012-04-17 14:35 UTC (permalink / raw)
  To: Jiri Olsa; +Cc: Gleb Natapov, a.p.zijlstra, mingo, linux-kernel, avi

Em Tue, Apr 17, 2012 at 01:25:00PM +0200, Jiri Olsa escreveu:
> On Tue, Apr 17, 2012 at 02:13:45PM +0300, Gleb Natapov wrote:
> > They were dropped during conversion of event parser. Add test case to
> > make sure this will not happen again.
> > 
> > Signed-off-by: Gleb Natapov <gleb@redhat.com>
> Acked-by: Jiri Olsa <jolsa@redhat.com>

Thanks guys, applied and pushed out to perf/urgent.

- Arnaldo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [tip:perf/urgent] perf tools: Add 'G' and 'H' modifiers to event parsing
  2012-04-17 11:13 [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing Gleb Natapov
  2012-04-17 11:25 ` Jiri Olsa
@ 2012-04-25 13:49 ` tip-bot for Gleb Natapov
  1 sibling, 0 replies; 4+ messages in thread
From: tip-bot for Gleb Natapov @ 2012-04-25 13:49 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: acme, linux-kernel, mingo, hpa, mingo, a.p.zijlstra, jolsa, gleb,
	tglx, avi

Commit-ID:  e7c72d888dac2c81003401d663bd8abd68e7c5cd
Gitweb:     http://git.kernel.org/tip/e7c72d888dac2c81003401d663bd8abd68e7c5cd
Author:     Gleb Natapov <gleb@redhat.com>
AuthorDate: Tue, 17 Apr 2012 14:13:45 +0300
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Tue, 17 Apr 2012 11:20:23 -0300

perf tools: Add 'G' and 'H' modifiers to event parsing

They were dropped during conversion of event parser. Add test case to
make sure this will not happen again.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Avi Kivity <avi@redhat.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/20120417111345.GK11918@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-test.c      |   30 ++++++++++++++++++++++++++++++
 tools/perf/util/parse-events.l |    2 +-
 2 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c
index 1c5b980..223ffdc 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))
diff --git a/tools/perf/util/parse-events.l b/tools/perf/util/parse-events.l
index 05d766e..1fcf1bb 100644
--- a/tools/perf/util/parse-events.l
+++ b/tools/perf/util/parse-events.l
@@ -54,7 +54,7 @@ num_dec		[0-9]+
 num_hex		0x[a-fA-F0-9]+
 num_raw_hex	[a-fA-F0-9]+
 name		[a-zA-Z_*?][a-zA-Z0-9_*?]*
-modifier_event	[ukhp]{1,5}
+modifier_event	[ukhpGH]{1,8}
 modifier_bp	[rwx]
 
 %%

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-04-25 13:49 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-17 11:13 [PATCHv2] perf tools: Add 'G' and 'H' modifiers to event parsing Gleb Natapov
2012-04-17 11:25 ` Jiri Olsa
2012-04-17 14:35   ` Arnaldo Carvalho de Melo
2012-04-25 13:49 ` [tip:perf/urgent] " tip-bot for Gleb Natapov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).