diff options
Diffstat (limited to 'kernel/trace/trace_irqsoff.c')
-rw-r--r-- | kernel/trace/trace_irqsoff.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c index 7a4dc014b8ab..d0c1748b1e2c 100644 --- a/kernel/trace/trace_irqsoff.c +++ b/kernel/trace/trace_irqsoff.c | |||
@@ -165,18 +165,20 @@ check_critical_timing(struct trace_array *tr, | |||
165 | 165 | ||
166 | update_max_tr_single(tr, current, cpu); | 166 | update_max_tr_single(tr, current, cpu); |
167 | 167 | ||
168 | if (tracing_thresh) { | 168 | if (!runqueue_is_locked()) { |
169 | printk(KERN_INFO "(%16s-%-5d|#%d):" | 169 | if (tracing_thresh) { |
170 | " %lu us critical section violates %lu us threshold.\n", | 170 | printk(KERN_INFO "(%16s-%-5d|#%d): %lu us critical" |
171 | current->comm, current->pid, | 171 | " section violates %lu us threshold.\n", |
172 | raw_smp_processor_id(), | 172 | current->comm, current->pid, |
173 | latency, nsecs_to_usecs(tracing_thresh)); | 173 | raw_smp_processor_id(), |
174 | } else { | 174 | latency, nsecs_to_usecs(tracing_thresh)); |
175 | printk(KERN_INFO "(%16s-%-5d|#%d):" | 175 | } else { |
176 | " new %lu us maximum-latency critical section.\n", | 176 | printk(KERN_INFO "(%16s-%-5d|#%d): new %lu us" |
177 | current->comm, current->pid, | 177 | " maximum-latency critical section.\n", |
178 | raw_smp_processor_id(), | 178 | current->comm, current->pid, |
179 | latency); | 179 | raw_smp_processor_id(), |
180 | latency); | ||
181 | } | ||
180 | } | 182 | } |
181 | 183 | ||
182 | max_sequence++; | 184 | max_sequence++; |