* [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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.