OSDN Git Service

time: hrtimer: Use timerqueue_iterate_next() to get to the next timer
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sat, 7 Apr 2018 17:11:55 +0000 (19:11 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 9 Apr 2018 09:54:57 +0000 (11:54 +0200)
Use timerqueue_iterate_next() to get to the next timer in
__hrtimer_next_event_base() without browsing the timerqueue
details diredctly.

No intentional changes in functionality.

Suggested-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
kernel/time/hrtimer.c

index 6d387db..14e8587 100644 (file)
@@ -505,9 +505,7 @@ static ktime_t __hrtimer_next_event_base(struct hrtimer_cpu_base *cpu_base,
                timer = container_of(next, struct hrtimer, node);
                if (timer == exclude) {
                        /* Get to the next timer in the queue. */
-                       struct rb_node *rbn = rb_next(&next->node);
-
-                       next = rb_entry_safe(rbn, struct timerqueue_node, node);
+                       next = timerqueue_iterate_next(next);
                        if (!next)
                                continue;