Hi Philippe,

while trying to understand Petr's problem (no clue yet), I came across
this: dump_stack was called unconditionally, ipipe_trace_panic_dump was
missing.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
---
 arch/x86/kernel/ipipe.c |   11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

Index: b/arch/x86/kernel/ipipe.c
===================================================================
--- a/arch/x86/kernel/ipipe.c
+++ b/arch/x86/kernel/ipipe.c
@@ -770,19 +770,22 @@ int __ipipe_handle_exception(struct pt_r
 		ipipe_trace_panic_freeze();
 
 		/* Always warn about user land and unfixable faults. */
-		if ((error_code & 4) || !search_exception_tables(instruction_pointer(regs)))
+		if ((error_code & 4) || !search_exception_tables(instruction_pointer(regs))) {
 			printk(KERN_ERR "BUG: Unhandled exception over domain"
 			       " %s at 0x%lx - switching to ROOT\n",
 			       ipd->name, instruction_pointer(regs));
+			dump_stack();
+			ipipe_trace_panic_dump();
 #ifdef CONFIG_IPIPE_DEBUG
 		/* Also report fixable ones when debugging is enabled. */
-		else
+		} else {
 			printk(KERN_WARNING "WARNING: Fixable exception over "
 			       "domain %s at 0x%lx - switching to ROOT\n",
 			       ipd->name, instruction_pointer(regs));
+			dump_stack();
+			ipipe_trace_panic_dump();
 #endif /* CONFIG_IPIPE_DEBUG */
-
-		dump_stack();
+		}
 	}
 
 	__ipipe_std_extable[vector](regs, error_code);
_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to