aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace/trace.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/trace/trace.c')
-rw-r--r--kernel/trace/trace.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index d943e69569cd..b69cc380322d 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -4388,13 +4388,24 @@ tracing_stats_read(struct file *filp, char __user *ubuf,
4388 cnt = ring_buffer_bytes_cpu(tr->buffer, cpu); 4388 cnt = ring_buffer_bytes_cpu(tr->buffer, cpu);
4389 trace_seq_printf(s, "bytes: %ld\n", cnt); 4389 trace_seq_printf(s, "bytes: %ld\n", cnt);
4390 4390
4391 t = ns2usecs(ring_buffer_oldest_event_ts(tr->buffer, cpu)); 4391 if (trace_clocks[trace_clock_id].in_ns) {
4392 usec_rem = do_div(t, USEC_PER_SEC); 4392 /* local or global for trace_clock */
4393 trace_seq_printf(s, "oldest event ts: %5llu.%06lu\n", t, usec_rem); 4393 t = ns2usecs(ring_buffer_oldest_event_ts(tr->buffer, cpu));
4394 usec_rem = do_div(t, USEC_PER_SEC);
4395 trace_seq_printf(s, "oldest event ts: %5llu.%06lu\n",
4396 t, usec_rem);
4397
4398 t = ns2usecs(ring_buffer_time_stamp(tr->buffer, cpu));
4399 usec_rem = do_div(t, USEC_PER_SEC);
4400 trace_seq_printf(s, "now ts: %5llu.%06lu\n", t, usec_rem);
4401 } else {
4402 /* counter or tsc mode for trace_clock */
4403 trace_seq_printf(s, "oldest event ts: %llu\n",
4404 ring_buffer_oldest_event_ts(tr->buffer, cpu));
4394 4405
4395 t = ns2usecs(ring_buffer_time_stamp(tr->buffer, cpu)); 4406 trace_seq_printf(s, "now ts: %llu\n",
4396 usec_rem = do_div(t, USEC_PER_SEC); 4407 ring_buffer_time_stamp(tr->buffer, cpu));
4397 trace_seq_printf(s, "now ts: %5llu.%06lu\n", t, usec_rem); 4408 }
4398 4409
4399 cnt = ring_buffer_dropped_events_cpu(tr->buffer, cpu); 4410 cnt = ring_buffer_dropped_events_cpu(tr->buffer, cpu);
4400 trace_seq_printf(s, "dropped events: %ld\n", cnt); 4411 trace_seq_printf(s, "dropped events: %ld\n", cnt);