Commit 69f698ad authored by Peter Zijlstra's avatar Peter Zijlstra Committed by Ingo Molnar

ftrace: sysrq-z to dump the buffers

Impact: add SysRq-z support to dump trace buffers

Allows one to force an ftrace dump from sysrq
Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: default avatarSteven Rostedt <srostedt@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent b2a866f9
...@@ -274,6 +274,22 @@ static struct sysrq_key_op sysrq_showstate_blocked_op = { ...@@ -274,6 +274,22 @@ static struct sysrq_key_op sysrq_showstate_blocked_op = {
.enable_mask = SYSRQ_ENABLE_DUMP, .enable_mask = SYSRQ_ENABLE_DUMP,
}; };
#ifdef CONFIG_TRACING
#include <linux/ftrace.h>
static void sysrq_ftrace_dump(int key, struct tty_struct *tty)
{
ftrace_dump();
}
static struct sysrq_key_op sysrq_ftrace_dump_op = {
.handler = sysrq_ftrace_dump,
.help_msg = "dumpZ-ftrace-buffer",
.action_msg = "Dump ftrace buffer",
.enable_mask = SYSRQ_ENABLE_DUMP,
};
#else
#define sysrq_ftrace_dump_op (*(struct sysrq_key_op *)0)
#endif
static void sysrq_handle_showmem(int key, struct tty_struct *tty) static void sysrq_handle_showmem(int key, struct tty_struct *tty)
{ {
...@@ -406,7 +422,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = { ...@@ -406,7 +422,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = {
NULL, /* x */ NULL, /* x */
/* y: May be registered on sparc64 for global register dump */ /* y: May be registered on sparc64 for global register dump */
NULL, /* y */ NULL, /* y */
NULL /* z */ &sysrq_ftrace_dump_op, /* z */
}; };
/* key2index calculation, -1 on invalid index */ /* key2index calculation, -1 on invalid index */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment