tracing/syscalls: Fix to print parameter types
PATCH 1/1 tracing/syscalls: Fix to print parameter types
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)
...--- kernel/trace/trace_syscalls.c | 17 +---------------- 1 files changed, 1 insertions(+), 16 deletions(-)
kernel/trace/trace_syscalls.c +1 -16
@@ -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 ;
Signature · 1 line
1.6.3
Commit-ID: ba8b3a40ba7e06d00c27508f090803af90e8dbbf Gitweb: http://git.kernel.org/tip/ba8b3a40ba7e06d00c27508f090803af90e8dbbf Author: Li Zefan <[email protected]> AuthorDate: Mon, 17 Aug 2009 16:55:18 +0800 Committer: Ingo Molnar <[email protected]> CommitDate: Mon, 17 Aug 2009 11:25:09 +0200
tracing/syscalls: Fix to print parameter types
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)
...LKML-Reference: <[email protected]>
--- kernel/trace/trace_syscalls.c | 17 +---------------- 1 files changed, 1 insertions(+), 16 deletions(-)
kernel/trace/trace_syscalls.c +1 -16
@@ -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 ;