debug_core,kdb: Allow the debug core to process a recursive debug entry
This allows kdb to debug a crash with in the kms code with a single level recursive re-entry. Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
This commit is contained in:
parent
d37d39ae3b
commit
6d90634076
1 changed files with 7 additions and 0 deletions
|
@ -445,6 +445,10 @@ static int kgdb_reenter_check(struct kgdb_state *ks)
|
|||
}
|
||||
|
||||
printk(KERN_CRIT "KGDB: re-enter exception: ALL breakpoints killed\n");
|
||||
#ifdef CONFIG_KGDB_KDB
|
||||
/* Allow kdb to debug itself one level */
|
||||
return 0;
|
||||
#endif
|
||||
dump_stack();
|
||||
panic("Recursive entry to debugger");
|
||||
|
||||
|
@ -489,6 +493,9 @@ static int kgdb_cpu_enter(struct kgdb_state *ks, struct pt_regs *regs)
|
|||
*/
|
||||
atomic_inc(&cpu_in_kgdb[cpu]);
|
||||
|
||||
if (exception_level == 1)
|
||||
goto cpu_master_loop;
|
||||
|
||||
/*
|
||||
* CPU will loop if it is a slave or request to become a kgdb
|
||||
* master cpu and acquire the kgdb_active lock:
|
||||
|
|
Loading…
Reference in a new issue