aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/i386/traps.c
diff options
context:
space:
mode:
Diffstat (limited to 'xen/arch/i386/traps.c')
-rw-r--r--xen/arch/i386/traps.c22
1 files changed, 3 insertions, 19 deletions
diff --git a/xen/arch/i386/traps.c b/xen/arch/i386/traps.c
index 60bd3f7de1..a555a21476 100644
--- a/xen/arch/i386/traps.c
+++ b/xen/arch/i386/traps.c
@@ -110,12 +110,9 @@ void show_trace(unsigned long * stack)
int i;
unsigned long addr;
- if (!stack)
- stack = (unsigned long*)&stack;
-
printk("Call Trace: ");
i = 1;
- while (((long) stack & (THREAD_SIZE-1)) != 0) {
+ while (((long) stack & (STACK_SIZE-1)) != 0) {
addr = *stack++;
if (kernel_text_address(addr)) {
if (i && ((i % 6) == 0))
@@ -127,30 +124,17 @@ void show_trace(unsigned long * stack)
printk("\n");
}
-void show_trace_task(struct task_struct *tsk)
-{
- unsigned long esp = tsk->thread.esp;
-
- /* User space on another CPU? */
- if ((esp ^ (unsigned long)tsk) & (PAGE_MASK<<1))
- return;
- show_trace((unsigned long *)esp);
-}
-
-void show_stack(unsigned long * esp)
+void show_stack(unsigned long *esp)
{
unsigned long *stack;
int i;
- 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 )
+ if ( ((long)stack & (STACK_SIZE-1)) == 0 )
break;
if ( i && ((i % 8) == 0) )
printk("\n ");