diff options
Diffstat (limited to 'kernel/time/alarmtimer.c')
-rw-r--r-- | kernel/time/alarmtimer.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c index 3921cf7fea8e..ab6ac077bdb7 100644 --- a/kernel/time/alarmtimer.c +++ b/kernel/time/alarmtimer.c | |||
@@ -254,13 +254,13 @@ static int alarmtimer_suspend(struct device *dev) | |||
254 | if (!next) | 254 | if (!next) |
255 | continue; | 255 | continue; |
256 | delta = ktime_sub(next->expires, base->gettime()); | 256 | delta = ktime_sub(next->expires, base->gettime()); |
257 | if (!min.tv64 || (delta.tv64 < min.tv64)) { | 257 | if (!min || (delta < min)) { |
258 | expires = next->expires; | 258 | expires = next->expires; |
259 | min = delta; | 259 | min = delta; |
260 | type = i; | 260 | type = i; |
261 | } | 261 | } |
262 | } | 262 | } |
263 | if (min.tv64 == 0) | 263 | if (min == 0) |
264 | return 0; | 264 | return 0; |
265 | 265 | ||
266 | if (ktime_to_ns(min) < 2 * NSEC_PER_SEC) { | 266 | if (ktime_to_ns(min) < 2 * NSEC_PER_SEC) { |
@@ -328,7 +328,7 @@ static void alarmtimer_freezerset(ktime_t absexp, enum alarmtimer_type type) | |||
328 | delta = ktime_sub(absexp, base->gettime()); | 328 | delta = ktime_sub(absexp, base->gettime()); |
329 | 329 | ||
330 | spin_lock_irqsave(&freezer_delta_lock, flags); | 330 | spin_lock_irqsave(&freezer_delta_lock, flags); |
331 | if (!freezer_delta.tv64 || (delta.tv64 < freezer_delta.tv64)) { | 331 | if (!freezer_delta || (delta < freezer_delta)) { |
332 | freezer_delta = delta; | 332 | freezer_delta = delta; |
333 | freezer_expires = absexp; | 333 | freezer_expires = absexp; |
334 | freezer_alarmtype = type; | 334 | freezer_alarmtype = type; |
@@ -453,10 +453,10 @@ u64 alarm_forward(struct alarm *alarm, ktime_t now, ktime_t interval) | |||
453 | 453 | ||
454 | delta = ktime_sub(now, alarm->node.expires); | 454 | delta = ktime_sub(now, alarm->node.expires); |
455 | 455 | ||
456 | if (delta.tv64 < 0) | 456 | if (delta < 0) |
457 | return 0; | 457 | return 0; |
458 | 458 | ||
459 | if (unlikely(delta.tv64 >= interval.tv64)) { | 459 | if (unlikely(delta >= interval)) { |
460 | s64 incr = ktime_to_ns(interval); | 460 | s64 incr = ktime_to_ns(interval); |
461 | 461 | ||
462 | overrun = ktime_divns(delta, incr); | 462 | overrun = ktime_divns(delta, incr); |
@@ -464,7 +464,7 @@ u64 alarm_forward(struct alarm *alarm, ktime_t now, ktime_t interval) | |||
464 | alarm->node.expires = ktime_add_ns(alarm->node.expires, | 464 | alarm->node.expires = ktime_add_ns(alarm->node.expires, |
465 | incr*overrun); | 465 | incr*overrun); |
466 | 466 | ||
467 | if (alarm->node.expires.tv64 > now.tv64) | 467 | if (alarm->node.expires > now) |
468 | return overrun; | 468 | return overrun; |
469 | /* | 469 | /* |
470 | * This (and the ktime_add() below) is the | 470 | * This (and the ktime_add() below) is the |
@@ -522,7 +522,7 @@ static enum alarmtimer_restart alarm_handle_timer(struct alarm *alarm, | |||
522 | } | 522 | } |
523 | 523 | ||
524 | /* Re-add periodic timers */ | 524 | /* Re-add periodic timers */ |
525 | if (ptr->it.alarm.interval.tv64) { | 525 | if (ptr->it.alarm.interval) { |
526 | ptr->it_overrun += alarm_forward(alarm, now, | 526 | ptr->it_overrun += alarm_forward(alarm, now, |
527 | ptr->it.alarm.interval); | 527 | ptr->it.alarm.interval); |
528 | result = ALARMTIMER_RESTART; | 528 | result = ALARMTIMER_RESTART; |
@@ -730,7 +730,7 @@ static int update_rmtp(ktime_t exp, enum alarmtimer_type type, | |||
730 | 730 | ||
731 | rem = ktime_sub(exp, alarm_bases[type].gettime()); | 731 | rem = ktime_sub(exp, alarm_bases[type].gettime()); |
732 | 732 | ||
733 | if (rem.tv64 <= 0) | 733 | if (rem <= 0) |
734 | return 0; | 734 | return 0; |
735 | rmt = ktime_to_timespec(rem); | 735 | rmt = ktime_to_timespec(rem); |
736 | 736 | ||
@@ -755,7 +755,7 @@ static long __sched alarm_timer_nsleep_restart(struct restart_block *restart) | |||
755 | struct alarm alarm; | 755 | struct alarm alarm; |
756 | int ret = 0; | 756 | int ret = 0; |
757 | 757 | ||
758 | exp.tv64 = restart->nanosleep.expires; | 758 | exp = restart->nanosleep.expires; |
759 | alarm_init(&alarm, type, alarmtimer_nsleep_wakeup); | 759 | alarm_init(&alarm, type, alarmtimer_nsleep_wakeup); |
760 | 760 | ||
761 | if (alarmtimer_do_nsleep(&alarm, exp)) | 761 | if (alarmtimer_do_nsleep(&alarm, exp)) |
@@ -835,7 +835,7 @@ static int alarm_timer_nsleep(const clockid_t which_clock, int flags, | |||
835 | restart = ¤t->restart_block; | 835 | restart = ¤t->restart_block; |
836 | restart->fn = alarm_timer_nsleep_restart; | 836 | restart->fn = alarm_timer_nsleep_restart; |
837 | restart->nanosleep.clockid = type; | 837 | restart->nanosleep.clockid = type; |
838 | restart->nanosleep.expires = exp.tv64; | 838 | restart->nanosleep.expires = exp; |
839 | restart->nanosleep.rmtp = rmtp; | 839 | restart->nanosleep.rmtp = rmtp; |
840 | ret = -ERESTART_RESTARTBLOCK; | 840 | ret = -ERESTART_RESTARTBLOCK; |
841 | 841 | ||