[for-next][PATCH 05/21] ftrace: Add trampolines to enabled_functions debug file

Steven Rostedt
2014-07-03T16:12:33Z

[-- Attachment #1: 0005-ftrace-Add-trampolines-to-enabled_functions-debug-fi.patch --]
[-- Type: text/plain, Size: 1205 bytes --]

From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>

The enabled_functions is used to help debug the dynamic function tracing.
Adding what trampolines are attached to files is useful for debugging.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
kernel/trace/ftrace.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index 5d15eb8146a7..3ded796e10e0 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -2903,10 +2903,22 @@ static int t_show(struct seq_file *m, void *v)
return 0;

seq_printf(m, "%ps", (void *)rec->ip);
- if (iter->flags & FTRACE_ITER_ENABLED)
+ if (iter->flags & FTRACE_ITER_ENABLED) {
seq_printf(m, " (%ld)%s",
ftrace_rec_count(rec),
- rec->flags & FTRACE_FL_REGS ? " R" : "");
+ rec->flags & FTRACE_FL_REGS ? " R" : " ");
+ if (rec->flags & FTRACE_FL_TRAMP_EN) {
+ struct ftrace_ops *ops;
+
+ ops = ftrace_find_tramp_ops_curr(rec);
+ if (ops && ops->trampoline)
+ seq_printf(m, "\ttramp: %pS",
+ (void *)ops->trampoline);
+ else
+ seq_printf(m, "\ttramp: ERROR!");
+ }
+ }
+
seq_printf(m, "\n");

return 0;
--
2.0.0