Hi all
A tiny helper, dl_time_equal, is added for easing readers.
And dl_entity_preempt is redefined to be bool, and its comment is also changed.
Signed-off-by: Hillf Danton<dhillf@xxxxxxxxx>
---
--- a/kernel/sched_dl.c Sat Apr 7 15:00:28 2012
+++ b/kernel/sched_dl.c Sat Apr 7 15:20:10 2012
@@ -16,16 +16,21 @@
*/
static const struct sched_class dl_sched_class;
-static inline int dl_time_before(u64 a, u64 b)
+static inline bool dl_time_equal(u64 a, u64 b)
+{
+ return a == b;
+}
+
+static inline bool dl_time_before(u64 a, u64 b)
{
return (s64)(a - b)< 0;
}
/*
- * Tells if entity @a should preempt entity @b.
+ * Return true if entity @a could preempt entity @b in term of deadline
*/
-static inline
-int dl_entity_preempt(struct sched_dl_entity *a, struct sched_dl_entity *b)
+static inline bool
+dl_entity_preempt(struct sched_dl_entity *a, struct sched_dl_entity *b)
{
return dl_time_before(a->deadline, b->deadline);
}
@@ -885,7 +890,7 @@ static void check_preempt_curr_dl(struct
* In the unlikely case current and p have the same deadline
* let us try to decide what's the best thing to do...
*/
- if ((s64)(p->dl.deadline - rq->curr->dl.deadline) == 0&&
+ if (dl_time_equal(p->dl.deadline, rq->curr->dl.deadline)&&
!need_resched())
check_preempt_equal_dl(rq, p);
#endif /* CONFIG_SMP */
--