Hi, On 10/05/17 09:50, Steven Rostedt wrote: > [ > 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; > }
Looks good to me. Peter, any particular reason why you wanted to first check the values? Best, - Juri

