summaryrefslogtreecommitdiffstats
path: root/kernel/stacktrace.c
diff options
context:
space:
mode:
authorVegard Nossum <vegard.nossum@gmail.com>2008-06-13 11:00:14 +0200
committerIngo Molnar <mingo@elte.hu>2008-06-13 13:17:30 +0200
commita5a242dceed5d1c74fe46088762a9e4312c2d000 (patch)
tree59f7f7cc3d31150921d078b457ba3bed1591426a /kernel/stacktrace.c
parentdebugging: make stacktrace independent from DEBUG_KERNEL (diff)
downloadlinux-a5a242dceed5d1c74fe46088762a9e4312c2d000.tar.xz
linux-a5a242dceed5d1c74fe46088762a9e4312c2d000.zip
stacktrace: print_stack_trace() cleanup
- 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>
Diffstat (limited to 'kernel/stacktrace.c')
-rw-r--r--kernel/stacktrace.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/kernel/stacktrace.c b/kernel/stacktrace.c
index 0914d0cbc83c..7eaea9d02a52 100644
--- a/kernel/stacktrace.c
+++ b/kernel/stacktrace.c
@@ -11,17 +11,14 @@
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]);
}
}