aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaf24@labyrinth.cl.cam.ac.uk <kaf24@labyrinth.cl.cam.ac.uk>2003-02-17 11:45:18 +0000
committerkaf24@labyrinth.cl.cam.ac.uk <kaf24@labyrinth.cl.cam.ac.uk>2003-02-17 11:45:18 +0000
commit7a4ebfbb402bcd4655072276a823d728904afb6a (patch)
tree2b298498193c02053b0992bafde3a492b9137b66
parentc7fc94b8a5e8e49315c3702e05ab53d998125aa5 (diff)
downloadxen-7a4ebfbb402bcd4655072276a823d728904afb6a.tar.gz
xen-7a4ebfbb402bcd4655072276a823d728904afb6a.tar.bz2
xen-7a4ebfbb402bcd4655072276a823d728904afb6a.zip
bitkeeper revision 1.62 (3e50cb4eg-PMPCWTPi41yy_fZzVykw)
page.h, traps.c: Improve BUG tracing. We now get registers + stack.
-rw-r--r--xen-2.4.16/arch/i386/traps.c6
-rw-r--r--xen-2.4.16/include/asm-i386/page.h8
2 files changed, 6 insertions, 8 deletions
diff --git a/xen-2.4.16/arch/i386/traps.c b/xen-2.4.16/arch/i386/traps.c
index f7d18610a0..8c71f78542 100644
--- a/xen-2.4.16/arch/i386/traps.c
+++ b/xen-2.4.16/arch/i386/traps.c
@@ -119,6 +119,8 @@ void show_stack(unsigned long * esp)
if(esp==NULL)
esp=(unsigned long*)&esp;
+ printk("Stack trace from ESP=%p:\n", esp);
+
stack = esp;
for(i=0; i < kstack_depth_to_print; i++) {
if (((long) stack & (THREAD_SIZE-1)) == 0)
@@ -128,7 +130,7 @@ void show_stack(unsigned long * esp)
printk("%08lx ", *stack++);
}
printk("\n");
- show_trace(esp);
+ //show_trace(esp);
}
void show_registers(struct pt_regs *regs)
@@ -152,6 +154,8 @@ void show_registers(struct pt_regs *regs)
regs->esi, regs->edi, regs->ebp, esp);
printk("ds: %04x es: %04x ss: %04x\n",
regs->xds & 0xffff, regs->xes & 0xffff, ss);
+
+ show_stack(&regs->esp);
}
diff --git a/xen-2.4.16/include/asm-i386/page.h b/xen-2.4.16/include/asm-i386/page.h
index 2929d7e6b7..63b5c73afd 100644
--- a/xen-2.4.16/include/asm-i386/page.h
+++ b/xen-2.4.16/include/asm-i386/page.h
@@ -3,16 +3,10 @@
#ifndef __ASSEMBLY__
-#ifdef CONFIG_DEBUG_BUGVERBOSE
-extern void do_BUG(const char *file, int line);
#define BUG() do { \
- do_BUG(__FILE__, __LINE__); \
+ printk("BUG at %s:%d\n", __FILE__, __LINE__); \
__asm__ __volatile__("ud2"); \
} while (0)
-#else
-#include <xeno/lib.h>
-#define BUG() (panic("BUG at %s:%d\n", __FILE__, __LINE__))
-#endif
#endif /* __ASSEMBLY__ */