lkml.org 
[lkml]   [2012]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[RFC PATCH 2/2] perf: add support for trace-cmd plugins
Date
Improves pretty printing of events when using perf-script. e.g.,
perf record -p 8731 -e kvm:* -fo /tmp/perf.data -- sleep 1

Currently when dumping kvm events you ugliness like this:
$ perf script -i /tmp/perf.data
Warning: bad op token {
Warning: failed to read event print fmt for kvm_emulate_insn
...
qemu-kvm 8734 [006] 826443.468554: kvm_emulate_insn:
<...>-8734 [006] 0.000000000: kvm_emulate_insn:
[FAILED TO PARSE] rip=18446744071579001937 csbase=0 len=6
insn=<89><B7> flags=9 failed=0

Ignoring the duplication of data the event is not readable.
With this patch and using the kvm plugin for trace-cmd you get:

qemu-kvm 8734 [006] 826443.468554: kvm_emulate_insn:
0:ffffffff81026451: mov %esi, 0xff5fb000(%rdi)

which is a bit more readable.

Signed-off-by: David Ahern <dsahern@gmail.com>
---
tools/perf/util/trace-event-parse.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
index df2fddb..7b149c5 100644
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -27,6 +27,7 @@
#include "../perf.h"
#include "util.h"
#include "trace-event.h"
+#include "tracecmd-plugins.h"

int header_page_size_size;
int header_page_ts_size;
@@ -36,6 +37,7 @@ struct pevent *perf_pevent;
static struct pevent *pevent;

bool latency_format;
+struct plugin_list *list;

int read_trace_init(int file_bigendian, int host_bigendian)
{
@@ -45,6 +47,8 @@ int read_trace_init(int file_bigendian, int host_bigendian)
perf_pevent = pevent_alloc();
pevent = perf_pevent;

+ list = tracecmd_load_plugins(pevent);
+
pevent_set_flag(pevent, PEVENT_NSEC_OUTPUT);
pevent_set_file_bigendian(pevent, file_bigendian);
pevent_set_host_bigendian(pevent, host_bigendian);
--
1.7.10.1


\
 
 \ /
  Last update: 2012-06-14 20:01    [W:1.709 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site