diff options
author | Vegard Nossum <vegard.nossum@gmail.com> | 2008-06-13 11:00:14 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-06-13 13:17:30 +0200 |
commit | a5a242dceed5d1c74fe46088762a9e4312c2d000 (patch) | |
tree | 59f7f7cc3d31150921d078b457ba3bed1591426a /kernel/stacktrace.c | |
parent | debugging: make stacktrace independent from DEBUG_KERNEL (diff) | |
download | linux-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.c | 9 |
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]); } } |