On 01/06/16 21:11, Peter Zijlstra wrote: > On Wed, Jun 01, 2016 at 08:39:22PM +0100, Dietmar Eggemann wrote: >> The information whether a se/cfs_rq should get its load and >> utilization (se representing a task and root cfs_rq) or only its load >> (se representing a task group and cfs_rq owned by this se) updated can >> be passed into __update_load_avg() to avoid the additional if/else >> condition to set update_util. >> >> @running is changed to @update_util which now carries the information if >> the utilization of the se/cfs_rq should be updated and if the se/cfs_rq >> is running or not. >> >> Signed-off-by: Dietmar Eggemann <dietmar.eggem...@arm.com> >> --- >> kernel/sched/fair.c | 42 +++++++++++++++++++++--------------------- >> 1 file changed, 21 insertions(+), 21 deletions(-) >> >> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c >> index 3ae8e79fb687..a1c13975cf56 100644 >> --- a/kernel/sched/fair.c >> +++ b/kernel/sched/fair.c >> @@ -2669,6 +2669,10 @@ static u32 __compute_runnable_contrib(u64 n) >> >> #define cap_scale(v, s) ((v)*(s) >> SCHED_CAPACITY_SHIFT) >> >> +#define upd_util_se(se, rng) ((entity_is_task(se) << 1) | (rng)) > > Just saying that on first reading that went: Random Number Generator, uh > what?! > > So maybe pick better names?
Yeah, can do. What about? #define update_util_se(se, running) ((entity_is_task(se) << 1) | (running)) #define update_util_rq(cfs_rq) ((rq_is_root(cfs_rq) << 1) | !!(cfs_rq)->curr)