diff options
Diffstat (limited to 'kernel/latencytop.c')
| -rw-r--r-- | kernel/latencytop.c | 23 | 
1 files changed, 9 insertions, 14 deletions
diff --git a/kernel/latencytop.c b/kernel/latencytop.c index 17110a4a4fc..ee74b35e528 100644 --- a/kernel/latencytop.c +++ b/kernel/latencytop.c @@ -241,24 +241,19 @@ static int lstats_show(struct seq_file *m, void *v)  	seq_puts(m, "Latency Top version : v0.1\n");  	for (i = 0; i < MAXLR; i++) { -		if (latency_record[i].backtrace[0]) { +		struct latency_record *lr = &latency_record[i]; + +		if (lr->backtrace[0]) {  			int q; -			seq_printf(m, "%i %lu %lu ", -				latency_record[i].count, -				latency_record[i].time, -				latency_record[i].max); +			seq_printf(m, "%i %lu %lu", +				   lr->count, lr->time, lr->max);  			for (q = 0; q < LT_BACKTRACEDEPTH; q++) { -				char sym[KSYM_SYMBOL_LEN]; -				char *c; -				if (!latency_record[i].backtrace[q]) +				unsigned long bt = lr->backtrace[q]; +				if (!bt)  					break; -				if (latency_record[i].backtrace[q] == ULONG_MAX) +				if (bt == ULONG_MAX)  					break; -				sprint_symbol(sym, latency_record[i].backtrace[q]); -				c = strchr(sym, '+'); -				if (c) -					*c = 0; -				seq_printf(m, "%s ", sym); +				seq_printf(m, " %ps", (void *)bt);  			}  			seq_printf(m, "\n");  		}  |