aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ftrace.h
diff options
context:
space:
mode:
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>2015-11-25 14:13:11 -0500
committerSteven Rostedt <rostedt@goodmis.org>2015-11-25 15:24:16 -0500
commitb05086c77a162dd8ef79606cb4723f1fc1448bb1 (patch)
treee3939af4c5377ceb2efe4fc791cdc797ee2c13b9 /include/linux/ftrace.h
parentftrace: Add new type to distinguish what kind of ftrace_bug() (diff)
downloadlinux-dev-b05086c77a162dd8ef79606cb4723f1fc1448bb1.tar.xz
linux-dev-b05086c77a162dd8ef79606cb4723f1fc1448bb1.zip
ftrace: Add variable ftrace_expected for archs to show expected code
When an anomaly is found while modifying function code, ftrace_bug() is called which disables the function tracing infrastructure and reports information about what failed. If the code that is to be replaced does not match what is expected, then actual code is shown. Currently there is no arch generic way to show what was expected. Add a new variable pointer calld ftrace_expected that the arch code can set to point to what it expected so that ftrace_bug() can report the actual text as well as the text that was expected to be there. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'include/linux/ftrace.h')
-rw-r--r--include/linux/ftrace.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 870c8eea38cd..134f8d45b35b 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -305,6 +305,12 @@ enum ftrace_bug_type {
};
extern enum ftrace_bug_type ftrace_bug_type;
+/*
+ * Archs can set this to point to a variable that holds the value that was
+ * expected at the call site before calling ftrace_bug().
+ */
+extern const void *ftrace_expected;
+
void ftrace_bug(int err, struct dyn_ftrace *rec);
struct seq_file;