diff options
Diffstat (limited to 'kernel/trace')
-rw-r--r-- | kernel/trace/ring_buffer.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c index f452de2ce490..a9e645a5bc10 100644 --- a/kernel/trace/ring_buffer.c +++ b/kernel/trace/ring_buffer.c | |||
@@ -454,13 +454,18 @@ struct ring_buffer_iter { | |||
454 | /* Up this if you want to test the TIME_EXTENTS and normalization */ | 454 | /* Up this if you want to test the TIME_EXTENTS and normalization */ |
455 | #define DEBUG_SHIFT 0 | 455 | #define DEBUG_SHIFT 0 |
456 | 456 | ||
457 | static inline u64 rb_time_stamp(struct ring_buffer *buffer, int cpu) | ||
458 | { | ||
459 | /* shift to debug/test normalization and TIME_EXTENTS */ | ||
460 | return buffer->clock() << DEBUG_SHIFT; | ||
461 | } | ||
462 | |||
457 | u64 ring_buffer_time_stamp(struct ring_buffer *buffer, int cpu) | 463 | u64 ring_buffer_time_stamp(struct ring_buffer *buffer, int cpu) |
458 | { | 464 | { |
459 | u64 time; | 465 | u64 time; |
460 | 466 | ||
461 | preempt_disable_notrace(); | 467 | preempt_disable_notrace(); |
462 | /* shift to debug/test normalization and TIME_EXTENTS */ | 468 | time = rb_time_stamp(buffer, cpu); |
463 | time = buffer->clock() << DEBUG_SHIFT; | ||
464 | preempt_enable_no_resched_notrace(); | 469 | preempt_enable_no_resched_notrace(); |
465 | 470 | ||
466 | return time; | 471 | return time; |
@@ -1247,7 +1252,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer, | |||
1247 | cpu_buffer->tail_page = next_page; | 1252 | cpu_buffer->tail_page = next_page; |
1248 | 1253 | ||
1249 | /* reread the time stamp */ | 1254 | /* reread the time stamp */ |
1250 | *ts = ring_buffer_time_stamp(buffer, cpu_buffer->cpu); | 1255 | *ts = rb_time_stamp(buffer, cpu_buffer->cpu); |
1251 | cpu_buffer->tail_page->page->time_stamp = *ts; | 1256 | cpu_buffer->tail_page->page->time_stamp = *ts; |
1252 | } | 1257 | } |
1253 | 1258 | ||
@@ -1413,7 +1418,7 @@ rb_reserve_next_event(struct ring_buffer_per_cpu *cpu_buffer, | |||
1413 | if (RB_WARN_ON(cpu_buffer, ++nr_loops > 1000)) | 1418 | if (RB_WARN_ON(cpu_buffer, ++nr_loops > 1000)) |
1414 | return NULL; | 1419 | return NULL; |
1415 | 1420 | ||
1416 | ts = ring_buffer_time_stamp(cpu_buffer->buffer, cpu_buffer->cpu); | 1421 | ts = rb_time_stamp(cpu_buffer->buffer, cpu_buffer->cpu); |
1417 | 1422 | ||
1418 | /* | 1423 | /* |
1419 | * Only the first commit can update the timestamp. | 1424 | * Only the first commit can update the timestamp. |