From: Ingo Molnar Add SysRq-Q to print pending timers and other timer info. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Signed-off-by: Andrew Morton --- drivers/char/sysrq.c | 14 +++++++++++++- include/linux/hrtimer.h | 3 +++ 2 files changed, 16 insertions(+), 1 deletion(-) Index: linux-2.6.20-rc4-mm1-bo/drivers/char/sysrq.c =================================================================== --- linux-2.6.20-rc4-mm1-bo.orig/drivers/char/sysrq.c +++ linux-2.6.20-rc4-mm1-bo/drivers/char/sysrq.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -159,6 +160,17 @@ static struct sysrq_key_op sysrq_sync_op .enable_mask = SYSRQ_ENABLE_SYNC, }; +static void sysrq_handle_show_timers(int key, struct tty_struct *tty) +{ + sysrq_timer_list_show(); +} + +static struct sysrq_key_op sysrq_show_timers_op = { + .handler = sysrq_handle_show_timers, + .help_msg = "show-all-timers(Q)", + .action_msg = "Show Pending Timers", +}; + static void sysrq_handle_mountro(int key, struct tty_struct *tty) { emergency_remount(); @@ -336,7 +348,7 @@ static struct sysrq_key_op *sysrq_key_ta /* o: This will often be registered as 'Off' at init time */ NULL, /* o */ &sysrq_showregs_op, /* p */ - NULL, /* q */ + &sysrq_show_timers_op, /* q */ &sysrq_unraw_op, /* r */ &sysrq_sync_op, /* s */ &sysrq_showstate_op, /* t */ Index: linux-2.6.20-rc4-mm1-bo/include/linux/hrtimer.h =================================================================== --- linux-2.6.20-rc4-mm1-bo.orig/include/linux/hrtimer.h +++ linux-2.6.20-rc4-mm1-bo/include/linux/hrtimer.h @@ -316,6 +316,9 @@ extern unsigned long ktime_divns(const k # define ktime_divns(kt, div) (unsigned long)((kt).tv64 / (div)) #endif +/* Show pending timers: */ +extern void sysrq_timer_list_show(void); + /* * Timer-statistics info: */ -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/