diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2014-10-24 23:56:04 +0200 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2014-11-11 18:42:13 +0100 |
commit | 4fd3279b48605ae3ea509b9b2c02e46aa0975930 (patch) | |
tree | f2f16efc4dab8233fe7285b764bde556d65dcde2 /arch | |
parent | ftrace/x86: Allow !CONFIG_PREEMPT dynamic ops to use allocated trampolines (diff) | |
download | linux-4fd3279b48605ae3ea509b9b2c02e46aa0975930.tar.xz linux-4fd3279b48605ae3ea509b9b2c02e46aa0975930.zip |
ftrace: Add more information to ftrace_bug() output
With the introduction of the dynamic trampolines, it is useful that if
things go wrong that ftrace_bug() produces more information about what
the current state is. This can help debug issues that may arise.
Ftrace has lots of checks to make sure that the state of the system it
touchs is exactly what it expects it to be. When it detects an abnormality
it calls ftrace_bug() and disables itself to prevent any further damage.
It is crucial that ftrace_bug() produces sufficient information that
can be used to debug the situation.
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Borislav Petkov <bp@suse.de>
Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Tested-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/ftrace.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c index 390311c0f03d..e66af6d265e8 100644 --- a/arch/powerpc/kernel/ftrace.c +++ b/arch/powerpc/kernel/ftrace.c @@ -449,7 +449,7 @@ void ftrace_replace_code(int enable) rec = ftrace_rec_iter_record(iter); ret = __ftrace_replace_code(rec, enable); if (ret) { - ftrace_bug(ret, rec->ip); + ftrace_bug(ret, rec); return; } } diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c index 4cfeca6ffe11..1aea94d336c7 100644 --- a/arch/x86/kernel/ftrace.c +++ b/arch/x86/kernel/ftrace.c @@ -583,7 +583,7 @@ void ftrace_replace_code(int enable) remove_breakpoints: pr_warn("Failed on %s (%d):\n", report, count); - ftrace_bug(ret, rec ? rec->ip : 0); + ftrace_bug(ret, rec); for_ftrace_rec_iter(iter) { rec = ftrace_rec_iter_record(iter); /* |