# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 7086a4e96ce0d2f6c1236c3640359f3ec9976ac9
# Parent 8d08ad8256dff689e04e8b0169c01b669bfa4a12
With the standard (XEN) prefix and the setting of 8 words per line,
stack dumps on i386 came out at 81 characters per line. The change to
xen/arch/x86/traps.c makes this 80 (without changing the look on the
screen), and the change to xen/drivers/char/console.c arranges for
soft line breaks not getting duplicated by hard line breaks, so
displaying 80 characters per line doesn't result in a subsequent blank
line.
From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
diff -r 8d08ad8256df -r 7086a4e96ce0 xen/arch/x86/traps.c
--- a/xen/arch/x86/traps.c Tue Apr 4 14:05:17 2006
+++ b/xen/arch/x86/traps.c Tue Apr 4 14:06:38 2006
@@ -138,13 +138,13 @@
if ( vm86_mode(regs) )
{
stack = (unsigned long *)((regs->ss << 4) + (regs->esp & 0xffff));
- printk("Guest stack trace from ss:sp = %04x:%04x (VM86)\n ",
+ printk("Guest stack trace from ss:sp = %04x:%04x (VM86)\n ",
regs->ss, (uint16_t)(regs->esp & 0xffff));
}
else
{
stack = (unsigned long *)regs->esp;
- printk("Guest stack trace from "__OP"sp=%p:\n ", stack);
+ printk("Guest stack trace from "__OP"sp=%p:\n ", stack);
}
for ( i = 0; i < (debug_stack_lines*stack_words_per_line); i++ )
@@ -160,8 +160,8 @@
break;
}
if ( (i != 0) && ((i % stack_words_per_line) == 0) )
- printk("\n ");
- printk("%p ", _p(addr));
+ printk("\n ");
+ printk(" %p", _p(addr));
stack++;
}
if ( i == 0 )
@@ -257,16 +257,16 @@
if ( guest_mode(regs) )
return show_guest_stack(regs);
- printk("Xen stack trace from "__OP"sp=%p:\n ", stack);
+ printk("Xen stack trace from "__OP"sp=%p:\n ", stack);
for ( i = 0; i < (debug_stack_lines*stack_words_per_line); i++ )
{
if ( ((long)stack & (STACK_SIZE-BYTES_PER_LONG)) == 0 )
break;
if ( (i != 0) && ((i % stack_words_per_line) == 0) )
- printk("\n ");
+ printk("\n ");
addr = *stack++;
- printk("%p ", _p(addr));
+ printk(" %p", _p(addr));
}
if ( i == 0 )
printk("Stack empty.");
diff -r 8d08ad8256df -r 7086a4e96ce0 xen/drivers/char/console.c
--- a/xen/drivers/char/console.c Tue Apr 4 14:05:17 2006
+++ b/xen/drivers/char/console.c Tue Apr 4 14:06:38 2006
@@ -200,10 +200,11 @@
}
else
{
+ if ( xpos >= COLUMNS )
+ put_newline();
video[(xpos + ypos * COLUMNS) * 2] = c & 0xFF;
video[(xpos + ypos * COLUMNS) * 2 + 1] = ATTRIBUTE;
- if ( ++xpos >= COLUMNS )
- put_newline();
+ ++xpos;
}
}
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|