Commit 53cc7bad authored by Thomas Gleixner's avatar Thomas Gleixner Committed by John Stultz

timerfd: Use ktime_mono_to_real()

We have a few other use cases of ktime_get_monotonic_offset() which
can be optimized with ktime_mono_to_real(). The timerfd code uses the
offset only for comparison, so we can use ktime_mono_to_real(0) for
this as well.

Funny enough text size shrinks with that on ARM and x8664 !?
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
parent 9a6b5197
...@@ -93,7 +93,7 @@ static enum alarmtimer_restart timerfd_alarmproc(struct alarm *alarm, ...@@ -93,7 +93,7 @@ static enum alarmtimer_restart timerfd_alarmproc(struct alarm *alarm,
*/ */
void timerfd_clock_was_set(void) void timerfd_clock_was_set(void)
{ {
ktime_t moffs = ktime_get_monotonic_offset(); ktime_t moffs = ktime_mono_to_real((ktime_t){ .tv64 = 0 });
struct timerfd_ctx *ctx; struct timerfd_ctx *ctx;
unsigned long flags; unsigned long flags;
...@@ -126,7 +126,7 @@ static bool timerfd_canceled(struct timerfd_ctx *ctx) ...@@ -126,7 +126,7 @@ static bool timerfd_canceled(struct timerfd_ctx *ctx)
{ {
if (!ctx->might_cancel || ctx->moffs.tv64 != KTIME_MAX) if (!ctx->might_cancel || ctx->moffs.tv64 != KTIME_MAX)
return false; return false;
ctx->moffs = ktime_get_monotonic_offset(); ctx->moffs = ktime_mono_to_real((ktime_t){ .tv64 = 0 });
return true; return true;
} }
...@@ -405,7 +405,7 @@ SYSCALL_DEFINE2(timerfd_create, int, clockid, int, flags) ...@@ -405,7 +405,7 @@ SYSCALL_DEFINE2(timerfd_create, int, clockid, int, flags)
else else
hrtimer_init(&ctx->t.tmr, clockid, HRTIMER_MODE_ABS); hrtimer_init(&ctx->t.tmr, clockid, HRTIMER_MODE_ABS);
ctx->moffs = ktime_get_monotonic_offset(); ctx->moffs = ktime_mono_to_real((ktime_t){ .tv64 = 0 });
ufd = anon_inode_getfd("[timerfd]", &timerfd_fops, ctx, ufd = anon_inode_getfd("[timerfd]", &timerfd_fops, ctx,
O_RDWR | (flags & TFD_SHARED_FCNTL_FLAGS)); O_RDWR | (flags & TFD_SHARED_FCNTL_FLAGS));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment