We know the load_idx is a decay for cpu_load of rq. After added
sched_avg, we has 2 kind decay for cpu_load. That is a kind of redundancy.
This patch remove the load_idx. There are 5 _idx in sched_domain,
busy_idx and idle_idx are not zero usually, but newidle_idx, wake_idx
and forkexec_idx are all zero on all arch.
and this patch remove the only place using busy_idx/idle_idx.
Since arm system rarely has much tasks running in system. this removing
should no harm. But it will be great, if someone can measure it with
some performance benchmark.
Do we have some performance testing force in linaro or ARM?
---
>From 6fd05051dbb5aaa28d3bfe11042cc9cbb147bf7c Mon Sep 17 00:00:00 2001
From: Alex Shi <alex.shi(a)linaro.org>
Date: Tue, 19 Nov 2013 17:38:07 +0800
Subject: [PATCH] sched: remove load_idx effect
Shortcut to remove rq->cpu_load[load_idx] effect in scheduler.
All other place rq->cpu_load used cpu_load[0].
Signed-off-by: Alex Shi <alex.shi(a)linaro.org>
---
kernel/sched/fair.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index e8b652e..ce683aa 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5633,7 +5633,7 @@ static inline void update_sd_lb_stats(struct
lb_env *env, struct sd_lb_stats *sd
if (child && child->flags & SD_PREFER_SIBLING)
prefer_sibling = 1;
- load_idx = get_sd_load_idx(env->sd, env->idle);
+ load_idx = 0;
do {
struct sg_lb_stats *sgs = &tmp_sgs;
--
1.8.1.2
--
Thanks
Alex
Automated DT boot report for various ARM defconfigs.
Tree/Branch: arm-soc
Git describe: v3.12-9691-g7b6891f
Failed boot tests (console logs at the end)
===========================================
omap3-tobi,3530overo: FAIL: omap2plus_defconfig
am335x-bone: FAIL: multi_v7_defconfig
omap3-tobi,3530overo: FAIL: multi_v7_defconfig
Full Report
===========
omap2plus_defconfig
-------------------
am335x-boneblack PASS: 0 min 27.8 sec
omap3-beagle-xm PASS: 0 min 49.3 sec
am335x-bone PASS: 0 min 26.6 sec
omap4-panda PASS: 1 min 3.4 sec
omap4-panda-es PASS: 1 min 2.3 sec
omap3-tobi,3730storm PASS: 0 min 21.2 sec
omap3-tobi,3530overo FAIL: 0 min 0.2 sec
tegra_defconfig
---------------
tegra30-beaver PASS: 0 min 17.0 sec
imx_v6_v7_defconfig
-------------------
imx6dl-wandboard,wand-dual PASS: 0 min 18.2 sec
imx6dl-wandboard,wand-solo PASS: 0 min 18.5 sec
imx6q-wandboard PASS: 0 min 16.7 sec
mvebu_defconfig
---------------
armada-xp-openblocks-ax3-4 PASS: 0 min 22.0 sec
armada-370-mirabox PASS: 0 min 20.1 sec
multi_v7_defconfig
------------------
ste-snowball PASS: 0 min 25.6 sec
tegra30-beaver PASS: 0 min 17.3 sec
am335x-boneblack PASS: 0 min 34.7 sec
omap3-beagle-xm PASS: 0 min 48.4 sec
sun7i-a20-cubieboard2 PASS: 0 min 13.0 sec
armada-370-mirabox PASS: 0 min 20.6 sec
omap4-panda PASS: 1 min 1.4 sec
omap4-panda-es PASS: 1 min 2.5 sec
armada-xp-openblocks-ax3-4 PASS: 0 min 22.8 sec
imx6dl-wandboard,wand-solo PASS: 0 min 16.5 sec
am335x-bone FAIL: 0 min 31.4 sec
imx6q-wandboard PASS: 0 min 15.8 sec
omap3-tobi,3730storm PASS: 0 min 22.2 sec
imx6dl-wandboard,wand-dual PASS: 0 min 16.7 sec
omap3-tobi,3530overo FAIL: 0 min 0.1 sec
u8500_defconfig
---------------
ste-snowball PASS: 0 min 31.7 sec
sama5_defconfig
---------------
sama5d35ek PASS: 0 min 17.3 sec
Console logs for failures
=========================
omap2plus_defconfig
-------------------
omap3-tobi,3530overo: FAIL: last 24 lines of boot log:
------------------------------------------------------
Conmux::connect vence.lan:41415: connect failed - IO::Socket::INET: connect: Connection refused
~$off
# PYBOOT: Exception: ERROR: Unable to connect to console. Giving up.
# PYBOOT: Time: 0.21 seconds.
# PYBOOT: Result: FAIL
multi_v7_defconfig
------------------
am335x-bone: FAIL: last 24 lines of boot log:
---------------------------------------------
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
cu: /home/khilman/dev/am335xbone: Line in use
Unknown command '~`f~~~~ff~`f~~~~ff~`f~~~~ff' - try 'help'
U-Boot# xp~xp~~$off
# PYBOOT: Exception: ERROR: Could not break into autoboot.
# PYBOOT: Time: 31.37 seconds.
# PYBOOT: Result: FAIL
omap3-tobi,3530overo: FAIL: last 24 lines of boot log:
------------------------------------------------------
Conmux::connect vence.lan:41415: connect failed - IO::Socket::INET: connect: Connection refused
~$off
# PYBOOT: Exception: ERROR: Unable to connect to console. Giving up.
# PYBOOT: Time: 0.15 seconds.
# PYBOOT: Result: FAIL