mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org, Jan Kiszka <jan.kiszka@siemens.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Jiri Olsa <jolsa@kernel.org>
Subject: [PATCH 2/9] tools lib traceevent: Factor out print_exit_reason in kvm plugin
Date: Thu, 19 Jun 2014 18:38:41 +0200	[thread overview]
Message-ID: <1403195928-1331-3-git-send-email-jolsa@kernel.org> (raw)
In-Reply-To: <1403195928-1331-1-git-send-email-jolsa@kernel.org>

From: Jan Kiszka <jan.kiszka@siemens.com>

We will reuse it for nested vmexit tracepoints.

Link: http://lkml.kernel.org/r/619c418c8af87f03027b8c8013b0443996605700.1388855989.git.jan.kiszka@web.de

Acked-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
 tools/lib/traceevent/plugin_kvm.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/tools/lib/traceevent/plugin_kvm.c b/tools/lib/traceevent/plugin_kvm.c
index 3e61220..2d7d1d7 100644
--- a/tools/lib/traceevent/plugin_kvm.c
+++ b/tools/lib/traceevent/plugin_kvm.c
@@ -244,15 +244,14 @@ static const char *find_exit_reason(unsigned isa, int val)
 	return strings[i].str;
 }
 
-static int kvm_exit_handler(struct trace_seq *s, struct pevent_record *record,
-			    struct event_format *event, void *context)
+static int print_exit_reason(struct trace_seq *s, struct pevent_record *record,
+			     struct event_format *event, const char *field)
 {
 	unsigned long long isa;
 	unsigned long long val;
-	unsigned long long info1 = 0, info2 = 0;
 	const char *reason;
 
-	if (pevent_get_field_val(s, event, "exit_reason", record, &val, 1) < 0)
+	if (pevent_get_field_val(s, event, field, record, &val, 1) < 0)
 		return -1;
 
 	if (pevent_get_field_val(s, event, "isa", record, &isa, 0) < 0)
@@ -263,6 +262,16 @@ static int kvm_exit_handler(struct trace_seq *s, struct pevent_record *record,
 		trace_seq_printf(s, "reason %s", reason);
 	else
 		trace_seq_printf(s, "reason UNKNOWN (%llu)", val);
+	return 0;
+}
+
+static int kvm_exit_handler(struct trace_seq *s, struct pevent_record *record,
+			    struct event_format *event, void *context)
+{
+	unsigned long long info1 = 0, info2 = 0;
+
+	if (print_exit_reason(s, record, event, "exit_reason") < 0)
+		return -1;
 
 	pevent_print_num_field(s, " rip 0x%lx", event, "guest_rip", record, 1);
 
-- 
1.8.3.1


  parent reply	other threads:[~2014-06-19 16:39 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-19 16:38 [GIT PULL 0/9] perf/core improvements and fixes Jiri Olsa
2014-06-19 16:38 ` [PATCH 1/9] tools lib traceevent: Report unknown VMX exit reasons with code Jiri Olsa
2014-06-19 16:38 ` Jiri Olsa [this message]
2014-06-19 16:38 ` [PATCH 3/9] tools lib traceevent: Add back in kvm plugins nested_vmexit events Jiri Olsa
2014-06-19 16:38 ` [PATCH 4/9] tools lib traceevent: Fix and cleanup kvm_nested_vmexit tracepoints Jiri Olsa
2014-06-19 16:38 ` [PATCH 5/9] tools lib traceevent: Fix format in plugin_kvm Jiri Olsa
2014-06-19 16:38 ` [PATCH 6/9] tools lib traceevent: Clean up format of args in cfg80211 plugin Jiri Olsa
2014-06-19 16:38 ` [PATCH 7/9] tools lib traceevent: Clean up format of args in jbd2 plugin Jiri Olsa
2014-06-19 16:38 ` [PATCH 8/9] perf tools: Fix segfault in cumulative.callchain report Jiri Olsa
2014-06-19 16:38 ` [PATCH 9/9] perf symbols: Get kernel start address by symbol name Jiri Olsa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1403195928-1331-3-git-send-email-jolsa@kernel.org \
    --to=jolsa@kernel.org \
    --cc=jan.kiszka@siemens.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=rostedt@goodmis.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome