diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2014-07-16 17:04:22 -0400 |
|---|---|---|
| committer | John Stultz <john.stultz@linaro.org> | 2014-07-23 13:18:01 -0400 |
| commit | 9a6b51976ea3a326b6de534beec3fd87275f4ef6 (patch) | |
| tree | 4f9eed2b231c527dab091620da6354fff97eae28 /kernel/time | |
| parent | 48064f5f67d58f95094305ac575d5372b58e265f (diff) | |
timekeeping: Provide ktime_mono_to_any()
ktime based conversion function to map a monotonic time stamp to a
different CLOCK.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
Diffstat (limited to 'kernel/time')
| -rw-r--r-- | kernel/time/timekeeping.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index e99350319eec..032e77a54a79 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c | |||
| @@ -451,6 +451,26 @@ ktime_t ktime_get_with_offset(enum tk_offsets offs) | |||
| 451 | EXPORT_SYMBOL_GPL(ktime_get_with_offset); | 451 | EXPORT_SYMBOL_GPL(ktime_get_with_offset); |
| 452 | 452 | ||
| 453 | /** | 453 | /** |
| 454 | * ktime_mono_to_any() - convert mononotic time to any other time | ||
| 455 | * @tmono: time to convert. | ||
| 456 | * @offs: which offset to use | ||
| 457 | */ | ||
| 458 | ktime_t ktime_mono_to_any(ktime_t tmono, enum tk_offsets offs) | ||
| 459 | { | ||
| 460 | ktime_t *offset = offsets[offs]; | ||
| 461 | unsigned long seq; | ||
| 462 | ktime_t tconv; | ||
| 463 | |||
| 464 | do { | ||
| 465 | seq = read_seqcount_begin(&tk_core.seq); | ||
| 466 | tconv = ktime_add(tmono, *offset); | ||
| 467 | } while (read_seqcount_retry(&tk_core.seq, seq)); | ||
| 468 | |||
| 469 | return tconv; | ||
| 470 | } | ||
| 471 | EXPORT_SYMBOL_GPL(ktime_mono_to_any); | ||
| 472 | |||
| 473 | /** | ||
| 454 | * ktime_get_ts64 - get the monotonic clock in timespec64 format | 474 | * ktime_get_ts64 - get the monotonic clock in timespec64 format |
| 455 | * @ts: pointer to timespec variable | 475 | * @ts: pointer to timespec variable |
| 456 | * | 476 | * |
