Currently no trace clock can account for suspend time, using monotonic during tracing in the suspend path means the trace times wont be advaced. Using the boot clock with ktime_get_with_offset is not an option due to live locking concerns in NMI context as suggested by Thomas [1].
These patches add a fast boot clock based on fast monotonic clock and adds a trace clock based on it. Instead of bloating the optimal case [2], these patches present a simple approach. Thanks Thomas for making documentation suggestions for effects of this approach [3]. [1] https://lkml.org/lkml/2016/11/20/75 [2] https://www.spinics.net/lists/kernel/msg2389485.html [3] https://lkml.org/lkml/2016/11/23/166 Joel Fernandes (3): timekeeping: Add a fast and NMI safe boot clock trace: Add an option for boot clock as trace clock trace: Update documentation for mono, mono_raw and boot clock Documentation/trace/ftrace.txt | 20 ++++++++++++++++++++ include/linux/timekeeping.h | 1 + kernel/time/timekeeping.c | 28 ++++++++++++++++++++++++++++ kernel/trace/trace.c | 1 + 4 files changed, 50 insertions(+) Cc: Steven Rostedt <rost...@goodmis.org> Cc: Thomas Gleixner <t...@linutronix.de> Cc: John Stultz <john.stu...@linaro.org> Cc: Ingo Molnar <mi...@redhat.com> -- 2.8.0.rc3.226.g39d4020