[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] With the standard (XEN) prefix and the setting of 8 words per line,
# 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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |