OSDN Git Service

tracing/syscalls: Fix to print parameter types
authorLi Zefan <lizf@cn.fujitsu.com>
Mon, 17 Aug 2009 08:55:18 +0000 (16:55 +0800)
committerIngo Molnar <mingo@elte.hu>
Mon, 17 Aug 2009 09:25:09 +0000 (11:25 +0200)
When syscall tracing was implemented as a tracer,
"syscall_arg_type" trace option could be set to enable the
display of syscall parameter types.

Now this option is gone since it's no longer a tracer, but the
code is still there but dead.

So we remove dead code and re-enable the printing of paramete
types via the verbose option:

  # echo verbose > trace_options
  # echo syscalls > set_event
  # cat trace
...
        bash-3331  [000]    95.348937: sys_fcntl64 -> 0x1
        bash-3331  [000]    95.348942: sys_close(unsigned int fd: a)
...

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jason Baron <jbaron@redhat.com>
LKML-Reference: <4A891AF6.5050102@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/trace/trace_syscalls.c

index f837ccc..f130dac 100644 (file)
@@ -13,21 +13,6 @@ static int sys_refcount_exit;
 static DECLARE_BITMAP(enabled_enter_syscalls, FTRACE_SYSCALL_MAX);
 static DECLARE_BITMAP(enabled_exit_syscalls, FTRACE_SYSCALL_MAX);
 
-/* Option to display the parameters types */
-enum {
-       TRACE_SYSCALLS_OPT_TYPES = 0x1,
-};
-
-static struct tracer_opt syscalls_opts[] = {
-       { TRACER_OPT(syscall_arg_type, TRACE_SYSCALLS_OPT_TYPES) },
-       { }
-};
-
-static struct tracer_flags syscalls_flags = {
-       .val = 0, /* By default: no parameters types */
-       .opts = syscalls_opts
-};
-
 enum print_line_t
 print_syscall_enter(struct trace_iterator *iter, int flags)
 {
@@ -55,7 +40,7 @@ print_syscall_enter(struct trace_iterator *iter, int flags)
 
        for (i = 0; i < entry->nb_args; i++) {
                /* parameter types */
-               if (syscalls_flags.val & TRACE_SYSCALLS_OPT_TYPES) {
+               if (trace_flags & TRACE_ITER_VERBOSE) {
                        ret = trace_seq_printf(s, "%s ", entry->types[i]);
                        if (!ret)
                                return TRACE_TYPE_PARTIAL_LINE;