[
  This is an RFC as I didn't run any benchmarks. It just seemed a bit 
  weird to me that we would add such a check instead of just clearing
  these variables out regardless.
]

The function replenish_dl_entity() clears dl_throttled and dl_yielded,
but checks first if they are set before doing so. As these variables
are in the same cache locale of other variables being modified, there's
no advantage in checking if they are set before clearing them. But
having the compare takes slots away from the branch prediction.

Signed-off-by: Steven Rostedt (VMware) <[email protected]>
---
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
index a2ce590..9748d33 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -423,10 +423,8 @@ static void replenish_dl_entity(struct sched_dl_entity 
*dl_se,
                dl_se->runtime = pi_se->dl_runtime;
        }
 
-       if (dl_se->dl_yielded)
-               dl_se->dl_yielded = 0;
-       if (dl_se->dl_throttled)
-               dl_se->dl_throttled = 0;
+       dl_se->dl_yielded = 0;
+       dl_se->dl_throttled = 0;
 }
 
 /*

Reply via email to