X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fchar%2Fsysrq.c;h=5765f672e853b5c7a0c50232f96970cf336f4789;hb=925d70d64bfeccb669c0750943585944abb28b51;hp=feb25158c8ee99c6a00363da01b4ea69c63fe4eb;hpb=c5fbc3966f48279dbebfde10248c977014aa9988;p=powerpc.git diff --git a/drivers/char/sysrq.c b/drivers/char/sysrq.c index feb25158c8..5765f672e8 100644 --- a/drivers/char/sysrq.c +++ b/drivers/char/sysrq.c @@ -153,6 +153,21 @@ static struct sysrq_key_op sysrq_mountro_op = { /* END SYNC SYSRQ HANDLERS BLOCK */ +#ifdef CONFIG_DEBUG_MUTEXES + +static void +sysrq_handle_showlocks(int key, struct pt_regs *pt_regs, struct tty_struct *tty) +{ + mutex_debug_show_all_locks(); +} + +static struct sysrq_key_op sysrq_showlocks_op = { + .handler = sysrq_handle_showlocks, + .help_msg = "show-all-locks(D)", + .action_msg = "Show Locks Held", +}; + +#endif /* SHOW SYSRQ HANDLERS BLOCK */ @@ -294,7 +309,11 @@ static struct sysrq_key_op *sysrq_key_table[SYSRQ_KEY_TABLE_LENGTH] = { #else /* c */ NULL, #endif +#ifdef CONFIG_DEBUG_MUTEXES +/* d */ &sysrq_showlocks_op, +#else /* d */ NULL, +#endif /* e */ &sysrq_term_op, /* f */ &sysrq_moom_op, /* g */ NULL, @@ -354,7 +373,7 @@ struct sysrq_key_op *__sysrq_get_key_op (int key) { return op_p; } -void __sysrq_put_key_op (int key, struct sysrq_key_op *op_p) { +static void __sysrq_put_key_op (int key, struct sysrq_key_op *op_p) { int i; i = sysrq_key_table_key2index(key); @@ -419,7 +438,7 @@ void handle_sysrq(int key, struct pt_regs *pt_regs, struct tty_struct *tty) __handle_sysrq(key, pt_regs, tty, 1); } -int __sysrq_swap_key_ops(int key, struct sysrq_key_op *insert_op_p, +static int __sysrq_swap_key_ops(int key, struct sysrq_key_op *insert_op_p, struct sysrq_key_op *remove_op_p) { int retval;