Sergei Shtylyov wrote: >>If there are no objections, I will commit the following patch.
Sorry for the belated objections. :-< >>Signed-off-by: Jason Wessel <[EMAIL PROTECTED]> >>Index: linux-2.6.21.1/kernel/kgdb.c >>=================================================================== >>--- linux-2.6.21.1.orig/kernel/kgdb.c >>+++ linux-2.6.21.1/kernel/kgdb.c [...] >>@@ -848,12 +856,36 @@ int kgdb_handle_exception(int ex_vector, >> long kgdb_usethreadid = 0; >> int error = 0, all_cpus_synced = 0; >> struct pt_regs *shadowregs; >>- int processor = smp_processor_id(); >>+ int processor = raw_smp_processor_id(); >> void *local_debuggerinfo; >> >> /* Panic on recursive debugger calls. */ >>- if (atomic_read(&debugger_active) == smp_processor_id() + 1) >>+ if (atomic_read(&debugger_active) == raw_smp_processor_id() + 1) { >>+ exception_level++; >>+ addr = kgdb_arch_pc(ex_vector, linux_regs); >>+ kgdb_deactivate_sw_breakpoints(); >>+ if (kgdb_remove_sw_break(addr) == 0) { >>+ /* If the break point removed ok at the place exception >>+ * occurred, try to recover and print a warning to the end >>+ * user because the user planted a breakpoint in a place >>+ * that KGDB needs in order to function. >>+ */ >>+ exception_level = 0; >>+ kgdb_skipexception(ex_vector, linux_regs); >>+ kgdb_activate_sw_breakpoints(); >>+ printk(KERN_CRIT "KGDB: re-enter exception: breakpoint >>removed\n"); >>+ WARN_ON(1); And won't WARN_ON(1) in turn cause and "invalid operation" exception? >>+ return 0; >>+ } WBR, Sergei ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Kgdb-bugreport mailing list Kgdb-bugreport@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport