Messages in this thread Patch in this message | | | Date | Thu, 20 May 2010 20:28:54 -0500 | From | Jason Wessel <> | Subject | Re: linux-next: build failure after merge of the kgdb tree |
| |
On 05/20/2010 08:23 PM, Dmitry Torokhov wrote: > On Fri, May 21, 2010 at 11:09:38AM +1000, Stephen Rothwell wrote: >> Hi Jason, >> >> On Thu, 20 May 2010 19:49:51 -0500 Jason Wessel <jason.wessel@windriver.com> wrote: >>> Before brute force toggling it, it seems we should check the value and >>> restore it after the execution of handle_sysrq(). >> Indeed, at the time I couldn't find an easy way to do that. >> >>> I'll have to look and see if there is an access function for this. >> Great, thanks. > > I would not mind re-exporting sysrq_on() again. >
We could but I don't know that you need to.
Would you be willing to sign off on a change like the one below Dmitry? If so then I'll push it into kgdb-next.
It is as simple as making the return from sysrq_toggle_support a bit more meaningful.
Thanks, Jason.
--- a/drivers/char/sysrq.c +++ b/drivers/char/sysrq.c @@ -717,7 +717,7 @@ int sysrq_toggle_support(int enable_mask sysrq_unregister_handler(); } - return 0; + return was_enabled; } static int __sysrq_swap_key_ops(int key, struct sysrq_key_op *insert_op_p, --- a/kernel/debug/kdb/kdb_main.c +++ b/kernel/debug/kdb/kdb_main.c @@ -1926,17 +1926,19 @@ static int kdb_rm(int argc, const char * */ static int kdb_sr(int argc, const char **argv) { + int toggle_save; + if (argc != 1) return KDB_ARGCOUNT; - if (!__sysrq_enabled) { - kdb_printf("Auto activating sysrq\n"); - __sysrq_enabled = 1; - } + + toggle_save = sysrq_toggle_support(1); kdb_trap_printk++; handle_sysrq(*argv[1], NULL); kdb_trap_printk--; + sysrq_toggle_support(toggle_save); + return 0; } #endif /* CONFIG_MAGIC_SYSRQ */
| |