stacktrace: print_stack_trace() cleanup
Vegard Nossum [Fri, 13 Jun 2008 09:00:14 +0000 (11:00 +0200)]
- shorter code and better atomicity with regards to printk().

(It's been tested with the backtrace self-test code on i386 and x86_64.)

Cc: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

kernel/stacktrace.c

index 0914d0c..7eaea9d 100644 (file)
 
 void print_stack_trace(struct stack_trace *trace, int spaces)
 {
-       int i, j;
+       int i;
 
        if (WARN_ON(!trace->entries))
                return;
 
        for (i = 0; i < trace->nr_entries; i++) {
-               unsigned long ip = trace->entries[i];
-
-               for (j = 0; j < spaces + 1; j++)
-                       printk(" ");
-               print_ip_sym(ip);
+               printk("%*c", 1 + spaces, ' ');
+               print_ip_sym(trace->entries[i]);
        }
 }