On Mon, Aug 26, 2013 at 12:36 PM, Paul Turner <p...@google.com> wrote: > On Sun, Aug 25, 2013 at 7:56 PM, Lei Wen <adrian.w...@gmail.com> wrote: >> On Tue, Aug 20, 2013 at 12:01 AM, Peter Zijlstra <pet...@infradead.org> >> wrote: >>> From: Joonsoo Kim <iamjoonsoo....@lge.com> >>> >>> There is no reason to maintain separate variables for this_group >>> and busiest_group in sd_lb_stat, except saving some space. >>> But this structure is always allocated in stack, so this saving >>> isn't really benificial [peterz: reducing stack space is good; in this >>> case readability increases enough that I think its still beneficial] >>> >>> This patch unify these variables, so IMO, readability may be improved. >>> >>> Signed-off-by: Joonsoo Kim <iamjoonsoo....@lge.com> >>> [peterz: lots of style edits, a few fixes and a rename] >>> Signed-off-by: Peter Zijlstra <pet...@infradead.org> >>> Link: >>> http://lkml.kernel.org/r/1375778203-31343-4-git-send-email-iamjoonsoo....@lge.com >>> --- >>> kernel/sched/fair.c | 225 >>> +++++++++++++++++++++++++--------------------------- >>> 1 file changed, 112 insertions(+), 113 deletions(-) >>> >>> --- a/kernel/sched/fair.c >>> +++ b/kernel/sched/fair.c >>> @@ -4277,36 +4277,6 @@ static unsigned long task_h_load(struct >>> >> [snip]... >>> - env->imbalance = DIV_ROUND_CLOSEST( >>> - sds->max_load * sds->busiest->sgp->power, >>> SCHED_POWER_SCALE); >>> + env->imbalance = DIV_ROUND_CLOSEST(sds->busiest_stat.avg_load * >>> + sds->busiest->sgp->power, >>> SCHED_POWER_SCALE); >>> >> >> I am wondering whether we could change this line as below is more >> appropriate, >> since it would avoid the division here: >> env->imbalance = (sds->busiest_stat.avg_load * >> sds->busiest->sgp->power) >> >> SCHED_POWER_SHIFT; >> >> I am not sure whether compiler would be smarter enough to covert into >>>> operation, >> if it see SCHED_POWER_SCALE is 1024 here. > > This would change the rounding. Fortunately, gcc is smart enough to > handle this.
Indeed, I check the assembly code, and it is really smart to do the changes. Thanks, Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/