|
@@ -2172,11 +2172,19 @@ rb_reserve_next_event(struct ring_buffer *buffer,
|
|
|
if (likely(ts >= cpu_buffer->write_stamp)) {
|
|
|
delta = diff;
|
|
|
if (unlikely(test_time_stamp(delta))) {
|
|
|
+ int local_clock_stable = 1;
|
|
|
+#ifdef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK
|
|
|
+ local_clock_stable = sched_clock_stable;
|
|
|
+#endif
|
|
|
WARN_ONCE(delta > (1ULL << 59),
|
|
|
- KERN_WARNING "Delta way too big! %llu ts=%llu write stamp = %llu\n",
|
|
|
+ KERN_WARNING "Delta way too big! %llu ts=%llu write stamp = %llu\n%s",
|
|
|
(unsigned long long)delta,
|
|
|
(unsigned long long)ts,
|
|
|
- (unsigned long long)cpu_buffer->write_stamp);
|
|
|
+ (unsigned long long)cpu_buffer->write_stamp,
|
|
|
+ local_clock_stable ? "" :
|
|
|
+ "If you just came from a suspend/resume,\n"
|
|
|
+ "please switch to the trace global clock:\n"
|
|
|
+ " echo global > /sys/kernel/debug/tracing/trace_clock\n");
|
|
|
add_timestamp = 1;
|
|
|
}
|
|
|
}
|