From: Jason Baron <jbaron@redhat.com>
To: linux-kernel@vger.kernel.org
Cc: fweisbec@gmail.com, mingo@elte.hu, laijs@cn.fujitsu.com,
rostedt@goodmis.org, peterz@infradead.org,
mathieu.desnoyers@polymtl.ca, jiayingz@google.com,
mbligh@google.com, roland@redhat.com, fche@redhat.com
Subject: [PATCH 0/2] convert ftrace syscalls to TRACE_EVENT
Date: Fri, 5 Jun 2009 14:07:59 -0400 [thread overview]
Message-ID: <cover.1244222378.git.jbaron@redhat.com> (raw)
hi,
I brought this up for as RFC before, and people were agreed in principal to
this idea. There are a number of advantages to having the syscall tracing
implemented as an event:
-can toggle on/off individual syscalls
-as a non-dedicated tracer, it can intermix with other tracing data
-by using tracepoints other infrastructures can tie into this implementation
-ability to print flag names and not just bits
In terms of the implementation, I've introduced a new 'trace_syscalls' enabled
flag in the <debugfs>/tracing/ directory to toggle the TIF_SYSCALL_FTRACE.
so: echo 1 > trace_syscalls to enable, echo 0 > trace_syscalls disable.
The implementation is still a bit rough, but I wanted to make sure I was on the
right track before spending more time on this. I've showed an example of
printing out a flag using a 'clock_id_toname()' to macro. Steven's print_flags()
addition, should make pretty printing flag names much easier.
I believe that this current patch covers the functionality of the current ftrace
syscall tracer minus priting variable names and types, which I could add....thus,
I hope it can be merged in this state, and we can add pretty printing features
over time?
thanks,
-Jason
Jason Baron (2):
-allow TP_printk() to have no args
-syscall tracepoints
arch/x86/kernel/ptrace.c | 8 +-
include/asm-generic/syscall.h | 3 +
include/trace/events/syscalls.h | 4202 +++++++++++++++++++++++++++++++++++++++
include/trace/ftrace.h | 2 +-
include/trace/syscall.h | 6 +
kernel/trace/Makefile | 1 -
kernel/trace/trace.c | 101 +
kernel/trace/trace_syscalls.c | 250 ---
8 files changed, 4318 insertions(+), 255 deletions(-)
create mode 100644 include/trace/events/syscalls.h
delete mode 100644 kernel/trace/trace_syscalls.c
next reply other threads:[~2009-06-05 18:08 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-05 18:07 Jason Baron [this message]
2009-06-05 18:08 ` [PATCH 1/2] allow TP_printk() to have no args Jason Baron
2009-06-05 18:08 ` [PATCH 2/2] convert to syscall tracepoints Jason Baron
2009-06-07 13:29 ` Ingo Molnar
2009-06-08 20:24 ` Jason Baron
2009-06-08 20:40 ` Ingo Molnar
2009-06-08 21:11 ` Jason Baron
2009-06-08 21:25 ` Ingo Molnar
2009-06-08 21:38 ` Jason Baron
2009-06-08 22:00 ` Ingo Molnar
2009-06-08 23:02 ` Frederic Weisbecker
2009-06-09 14:13 ` Jason Baron
2009-06-09 18:53 ` Frederic Weisbecker
2009-06-09 19:17 ` Jason Baron
2009-06-07 19:19 ` Frederic Weisbecker
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=cover.1244222378.git.jbaron@redhat.com \
--to=jbaron@redhat.com \
--cc=fche@redhat.com \
--cc=fweisbec@gmail.com \
--cc=jiayingz@google.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=mbligh@google.com \
--cc=mingo@elte.hu \
--cc=peterz@infradead.org \
--cc=roland@redhat.com \
--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 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.