sched: Factor out code to should_we_balance()
authorJoonsoo Kim <iamjoonsoo.kim@lge.com>
Tue, 6 Aug 2013 08:36:42 +0000 (17:36 +0900)
committerIngo Molnar <mingo@kernel.org>
Mon, 2 Sep 2013 06:27:34 +0000 (08:27 +0200)
commit23f0d2093c789e612185180c468fa09063834e87
tree63e1fb698d9e4e66d7932f7195af8f94e8f4004b
parent95a79b805b935f4a7b685aa8a117d916c638323e
sched: Factor out code to should_we_balance()

Now checking whether this cpu is appropriate to balance or not
is embedded into update_sg_lb_stats() and this checking has no direct
relationship to this function. There is not enough reason to place
this checking at update_sg_lb_stats(), except saving one iteration
for sched_group_cpus.

In this patch, I factor out this checking to should_we_balance() function.
And before doing actual work for load_balancing, check whether this cpu is
appropriate to balance via should_we_balance(). If this cpu is not
a candidate for balancing, it quit the work immediately.

With this change, we can save two memset cost and can expect better
compiler optimization.

Below is result of this patch.

 * Vanilla *
   text    data     bss     dec     hex filename
  34499    1136     116   35751    8ba7 kernel/sched/fair.o

 * Patched *
   text    data     bss     dec     hex filename
  34243    1136     116   35495    8aa7 kernel/sched/fair.o

In addition, rename @balance to @continue_balancing in order to represent
its purpose more clearly.

Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
[ s/should_balance/continue_balancing/g ]
Reviewed-by: Paul Turner <pjt@google.com>
[ Made style changes and a fix in should_we_balance(). ]
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1375778203-31343-3-git-send-email-iamjoonsoo.kim@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/fair.c