diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-06-01 13:15:58 +1000 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-06-01 13:15:58 +1000 |
commit | 9b9d9fbc619f522e71e40eca660e0626ae842204 (patch) | |
tree | ed3d111725bc177df8027b4595ac81493efb7e54 | |
parent | 38cbc6bb5cce08deae9bfb06cfbc7c76759625fa (diff) | |
parent | 93c47fada46e034941106fb34b76a00a87108fc5 (diff) |
Merge remote branch 'kgdb/kgdb-next'
-rw-r--r-- | drivers/char/sysrq.c | 2 | ||||
-rw-r--r-- | kernel/debug/kdb/kdb_main.c | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/drivers/char/sysrq.c b/drivers/char/sysrq.c index 5d15630a5830..d5a2e2f9287d 100644 --- 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, diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c index b724c791b6d4..75ae5e1ccd9d 100644 --- a/kernel/debug/kdb/kdb_main.c +++ b/kernel/debug/kdb/kdb_main.c @@ -1818,13 +1818,17 @@ static int kdb_rm(int argc, const char **argv) */ static int kdb_sr(int argc, const char **argv) { + int toggle_save; + if (argc != 1) return KDB_ARGCOUNT; - sysrq_toggle_support(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 */ @@ -2297,6 +2301,9 @@ static int kdb_ll(int argc, const char **argv) while (va) { char buf[80]; + if (KDB_FLAG(CMD_INTERRUPT)) + return 0; + sprintf(buf, "%s " kdb_machreg_fmt "\n", command, va); diag = kdb_parse(buf); if (diag) |