Skip to contentSkip to conversation

Introduce a fast boot clock and add it as trace clock

PATCH Superseded Joel Fernandes 1 participant 1 message Nov 21, 2016

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

v2 cover Introduce a fast boot clock and add it as trace clock

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 which solves both these issues.

Changes since v1:
- Use TK_OFFS_MAX as offset.
Changes since RFC:
- Moved the ktime_t offsets to the end of tk_fast for cache line optimization
- use unlikely to optimize for the monotonic case

[1] https://lkml.org/lkml/2016/11/20/75

Joel Fernandes (2):
timekeeping: Introduce a fast boot clock derived from fast monotonic
clock
trace: Add an option for boot clock as trace clock

 kernel/time/timekeeping.c | 36 ++++++++++++++++++++++++++++++------
 kernel/trace/trace.c      |  1 +
 2 files changed, 31 insertions(+), 6 deletions(-)
Cc Steven Rostedt <[email protected]>
Cc Thomas Gleixner <[email protected]>
Cc John Stultz <[email protected]>
Cc Ingo Molnar <[email protected]>
Signature · 1 line
2.8.0.rc3.226.g39d4020