lkml.org 
[lkml]   [2009]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 15/15] ftrace: add pretty print function for traceon and traceoff hooks
From: Steven Rostedt <srostedt@redhat.com>

This patch adds a pretty print version of traceon and traceoff
output for set_ftrace_filter.

# echo 'sys_open:traceon:4' > set_ftrace_filter
# cat set_ftrace_filter

#### all functions enabled ####
sys_open:traceon:count=4

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
---
kernel/trace/trace_functions.c | 28 ++++++++++++++++++++++++++++
1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
index 5c95708..f520aa4 100644
--- a/kernel/trace/trace_functions.c
+++ b/kernel/trace/trace_functions.c
@@ -267,15 +267,43 @@ ftrace_traceoff(unsigned long ip, unsigned long parent_ip, void **data)
tracing_off();
}

+static int
+ftrace_trace_onoff_print(struct seq_file *m, unsigned long ip,
+ struct ftrace_hook_ops *ops, void *data);
+
static struct ftrace_hook_ops traceon_hook_ops = {
.func = ftrace_traceon,
+ .print = ftrace_trace_onoff_print,
};

static struct ftrace_hook_ops traceoff_hook_ops = {
.func = ftrace_traceoff,
+ .print = ftrace_trace_onoff_print,
};

static int
+ftrace_trace_onoff_print(struct seq_file *m, unsigned long ip,
+ struct ftrace_hook_ops *ops, void *data)
+{
+ char str[KSYM_SYMBOL_LEN];
+ long count = (long)data;
+
+ kallsyms_lookup(ip, NULL, NULL, NULL, str);
+ seq_printf(m, "%s:", str);
+
+ if (ops == &traceon_hook_ops)
+ seq_printf(m, "traceon");
+ else
+ seq_printf(m, "traceoff");
+
+ if (count != -1)
+ seq_printf(m, ":count=%ld", count);
+ seq_putc(m, '\n');
+
+ return 0;
+}
+
+static int
ftrace_trace_onoff_unreg(char *glob, char *cmd, char *param)
{
struct ftrace_hook_ops *ops;
--
1.5.6.5
--


\
 
 \ /
  Last update: 2009-02-18 12:23    [W:0.143 / U:35.512 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site