[RFC][PATCH] sched/deadline: Remove if statement before clearing throttle and yielded
From: Steven Rostedt
Date: Wed May 10 2017 - 09:50:52 EST
[
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) <rostedt@xxxxxxxxxxx>
---
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;
}
/*