trace: Add ftrace tracing backend

This patch adds a ftrace tracing backend which sends trace event to
ftrace marker file. You can effectively compare qemu trace data and
kernel(especially, kvm.ko when using KVM) trace data.
The ftrace backend is restricted to Linux only.

To try out the ftrace backend:

 $ ./configure --trace-backend=ftrace
 $ make

if you use KVM, enable kvm events in ftrace:

 # sudo echo 1 > /sys/kernel/debug/tracing/events/kvm/enable

After running qemu by root user, you can get the trace:

 # cat /sys/kernel/debug/tracing/trace

Signed-off-by: Eiichi Tsukata <eiichi.tsukata.xh@hitachi.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
Eiichi Tsukata 2013-04-11 20:25:15 +09:00 committed by Stefan Hajnoczi
parent b76ac80a5c
commit 781e9545db
5 changed files with 175 additions and 0 deletions

10
trace/ftrace.h Normal file
View file

@ -0,0 +1,10 @@
#ifndef TRACE_FTRACE_H
#define TRACE_FTRACE_H
#define MAX_TRACE_STRLEN 512
#define _STR(x) #x
#define STR(x) _STR(x)
extern int trace_marker_fd;
#endif /* ! TRACE_FTRACE_H */