diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-06-16 11:47:55 +1000 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-06-16 11:47:55 +1000 |
commit | 01ea0246f852d7b93bb60072327ca75743afa885 (patch) | |
tree | e8212f4b2bb26b8b17b440630c5d14072d5c10b0 | |
parent | 4a63f861abcf9d3bb6a5e5a76aafae954df9fd26 (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 5d64e3acb000..44e0334a02ba 100644 --- a/drivers/char/sysrq.c +++ b/drivers/char/sysrq.c @@ -721,7 +721,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 184cd8209c36..5f24758810aa 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 */ @@ -2291,6 +2295,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) |