The rate_limit_us for the schedutil governor is getting set to 500 ms by
default for the ARM64 hikey board. And its way too much, even for the
default value. Lets set the default transition_delay_ns to something
more realistic (10 ms), while the userspace always have a chance to set
something it wants.
Signed-off-by: Viresh Kumar <viresh.kumar(a)linaro.org>
---
drivers/cpufreq/cpufreq-dt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
index c943787d761e..70eac3fd89ac 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -275,6 +275,9 @@ static int cpufreq_init(struct cpufreq_policy *policy)
policy->cpuinfo.transition_latency = transition_latency;
+ /* Set the default transition delay to 10ms */
+ policy->transition_delay_us = 10 * USEC_PER_MSEC;
+
return 0;
out_free_cpufreq_table:
--
2.7.4
Tree/Branch: next-20170628
Git describe: next-20170628
Commit: a51166ce71 Add linux-next specific files for 20170628
Build Time: 0 min 11 sec
Passed: 7 / 7 (100.00 %)
Failed: 0 / 7 ( 0.00 %)
Errors: 0
Warnings: 7
Section Mismatches: 0
-------------------------------------------------------------------------------
defconfigs with issues (other than build errors):
3 warnings 0 mismatches : arm-multi_v5_defconfig
2 warnings 0 mismatches : arm-multi_v7_defconfig
1 warnings 0 mismatches : x86_64-defconfig
4 warnings 0 mismatches : arm-allmodconfig
2 warnings 0 mismatches : arm-allnoconfig
1 warnings 0 mismatches : x86_64-allnoconfig
2 warnings 0 mismatches : arm-multi_v4t_defconfig
-------------------------------------------------------------------------------
Warnings Summary: 7
4 ../drivers/ata/libata-scsi.c:4194:1: warning: label 'unspprt_sa' defined but not used [-Wunused-label]
3 ../kernel/sched/fair.c:2657:9: warning: its scope is only this definition or declaration, which is probably not what you want
3 ../kernel/sched/fair.c:2657:9: warning: 'struct sched_domain' declared inside parameter list
2 ../drivers/rtc/rtc-brcmstb-waketimer.c:142:6: warning: unused variable 'ret' [-Wunused-variable]
1 ../kernel/sched/fair.c:2655:44: warning: 'struct sched_domain' declared inside parameter list will not be visible outside of this definition or declaration
1 ../include/uapi/linux/byteorder/big_endian.h:32:26: warning: large integer implicitly truncated to unsigned type [-Woverflow]
1 ../drivers/staging/media/imx/imx-media-of.c:216:4: warning: 'remote_np' may be used uninitialized in this function [-Wmaybe-uninitialized]
===============================================================================
Detailed per-defconfig build reports below:
-------------------------------------------------------------------------------
arm-multi_v5_defconfig : PASS, 0 errors, 3 warnings, 0 section mismatches
Warnings:
../drivers/ata/libata-scsi.c:4194:1: warning: label 'unspprt_sa' defined but not used [-Wunused-label]
../kernel/sched/fair.c:2657:9: warning: 'struct sched_domain' declared inside parameter list
../kernel/sched/fair.c:2657:9: warning: its scope is only this definition or declaration, which is probably not what you want
-------------------------------------------------------------------------------
arm-multi_v7_defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../drivers/ata/libata-scsi.c:4194:1: warning: label 'unspprt_sa' defined but not used [-Wunused-label]
../drivers/rtc/rtc-brcmstb-waketimer.c:142:6: warning: unused variable 'ret' [-Wunused-variable]
-------------------------------------------------------------------------------
x86_64-defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
../drivers/ata/libata-scsi.c:4194:1: warning: label 'unspprt_sa' defined but not used [-Wunused-label]
-------------------------------------------------------------------------------
arm-allmodconfig : PASS, 0 errors, 4 warnings, 0 section mismatches
Warnings:
../drivers/ata/libata-scsi.c:4194:1: warning: label 'unspprt_sa' defined but not used [-Wunused-label]
../drivers/rtc/rtc-brcmstb-waketimer.c:142:6: warning: unused variable 'ret' [-Wunused-variable]
../include/uapi/linux/byteorder/big_endian.h:32:26: warning: large integer implicitly truncated to unsigned type [-Woverflow]
../drivers/staging/media/imx/imx-media-of.c:216:4: warning: 'remote_np' may be used uninitialized in this function [-Wmaybe-uninitialized]
-------------------------------------------------------------------------------
arm-allnoconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/sched/fair.c:2657:9: warning: 'struct sched_domain' declared inside parameter list
../kernel/sched/fair.c:2657:9: warning: its scope is only this definition or declaration, which is probably not what you want
-------------------------------------------------------------------------------
x86_64-allnoconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
../kernel/sched/fair.c:2655:44: warning: 'struct sched_domain' declared inside parameter list will not be visible outside of this definition or declaration
-------------------------------------------------------------------------------
arm-multi_v4t_defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/sched/fair.c:2657:9: warning: 'struct sched_domain' declared inside parameter list
../kernel/sched/fair.c:2657:9: warning: its scope is only this definition or declaration, which is probably not what you want
-------------------------------------------------------------------------------
Passed with no errors, warnings or mismatches:
Tree/Branch: next-20170621
Git describe: next-20170621
Commit: be285968cc Add linux-next specific files for 20170621
Build Time: 0 min 10 sec
Passed: 6 / 7 ( 85.71 %)
Failed: 1 / 7 ( 14.29 %)
Errors: 2
Warnings: 7
Section Mismatches: 14
Failed defconfigs:
arm-allmodconfig
Errors:
arm-allmodconfig
../drivers/pci/host/pcie-mediatek.c:485:8: error: implicit declaration of function 'pci_register_host_bridge' [-Werror=implicit-function-declaration]
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
-------------------------------------------------------------------------------
defconfigs with issues (other than build errors):
2 warnings 0 mismatches : arm-multi_v5_defconfig
2 warnings 0 mismatches : arm-multi_v7_defconfig
2 warnings 0 mismatches : x86_64-defconfig
10 warnings 14 mismatches : arm-allmodconfig
2 warnings 0 mismatches : arm-allnoconfig
2 warnings 0 mismatches : x86_64-allnoconfig
2 warnings 0 mismatches : arm-multi_v4t_defconfig
-------------------------------------------------------------------------------
Errors summary: 2
6 ../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
1 ../drivers/pci/host/pcie-mediatek.c:485:8: error: implicit declaration of function 'pci_register_host_bridge' [-Werror=implicit-function-declaration]
Warnings Summary: 7
7 ../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
5 ../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
4 ../kernel/cpu.c:1778:6: warning: unused variable 'cpu' [-Wunused-variable]
3 ../include/linux/printk.h:303:2: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized]
1 ../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' used but never defined
1 ../drivers/gpu/drm/arm/hdlcd_crtc.c:264:6: warning: unused variable 'src_x' [-Wunused-variable]
1 ../drivers/gpu/drm/arm/hdlcd_crtc.c:264:13: warning: unused variable 'src_y' [-Wunused-variable]
Section Mismatch Summary: 14
1 WARNING: drivers/clk/built-in.o(.text+0x150a4): Section mismatch in reference from the function sr_genpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x15054): Section mismatch in reference from the function sr_genpll4_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x14ffc): Section mismatch in reference from the function sr_genpll5_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x14fa8): Section mismatch in reference from the function sr_lcpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x14f58): Section mismatch in reference from the function sr_lcpll1_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x14f08): Section mismatch in reference from the function sr_lcpll_pcie_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/built-in.o(.text+0x14ebc): Section mismatch in reference from the function sr_genpll3_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x46c4): Section mismatch in reference from the function sr_genpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x4674): Section mismatch in reference from the function sr_genpll4_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x461c): Section mismatch in reference from the function sr_genpll5_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x45c8): Section mismatch in reference from the function sr_lcpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x4578): Section mismatch in reference from the function sr_lcpll1_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x4528): Section mismatch in reference from the function sr_lcpll_pcie_clk_init() to the function .init.text:iproc_pll_clk_setup()
1 WARNING: drivers/clk/bcm/built-in.o(.text+0x44dc): Section mismatch in reference from the function sr_genpll3_clk_init() to the function .init.text:iproc_pll_clk_setup()
===============================================================================
Detailed per-defconfig build reports below:
-------------------------------------------------------------------------------
arm-multi_v5_defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/cpu.c:1778:6: warning: unused variable 'cpu' [-Wunused-variable]
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
-------------------------------------------------------------------------------
arm-multi_v7_defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
../include/linux/printk.h:303:2: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized]
-------------------------------------------------------------------------------
x86_64-defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
../include/linux/printk.h:303:2: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized]
-------------------------------------------------------------------------------
arm-allmodconfig : FAIL, 7 errors, 10 warnings, 14 section mismatches
Errors:
../drivers/pci/host/pcie-mediatek.c:485:8: error: implicit declaration of function 'pci_register_host_bridge' [-Werror=implicit-function-declaration]
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
../include/linux/qed/qede_rdma.h:85:1: error: expected identifier or '(' before '{' token
Warnings:
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
../include/linux/printk.h:303:2: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized]
../drivers/gpu/drm/arm/hdlcd_crtc.c:264:13: warning: unused variable 'src_y' [-Wunused-variable]
../drivers/gpu/drm/arm/hdlcd_crtc.c:264:6: warning: unused variable 'src_x' [-Wunused-variable]
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' used but never defined
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
../include/linux/qed/qede_rdma.h:84:19: warning: 'qede_rdma_dev_add' declared 'static' but never defined [-Wunused-function]
Section Mismatches:
WARNING: drivers/clk/bcm/built-in.o(.text+0x44dc): Section mismatch in reference from the function sr_genpll3_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x4528): Section mismatch in reference from the function sr_lcpll_pcie_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x4578): Section mismatch in reference from the function sr_lcpll1_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x45c8): Section mismatch in reference from the function sr_lcpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x461c): Section mismatch in reference from the function sr_genpll5_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x4674): Section mismatch in reference from the function sr_genpll4_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/bcm/built-in.o(.text+0x46c4): Section mismatch in reference from the function sr_genpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x14ebc): Section mismatch in reference from the function sr_genpll3_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x14f08): Section mismatch in reference from the function sr_lcpll_pcie_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x14f58): Section mismatch in reference from the function sr_lcpll1_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x14fa8): Section mismatch in reference from the function sr_lcpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x14ffc): Section mismatch in reference from the function sr_genpll5_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x15054): Section mismatch in reference from the function sr_genpll4_clk_init() to the function .init.text:iproc_pll_clk_setup()
WARNING: drivers/clk/built-in.o(.text+0x150a4): Section mismatch in reference from the function sr_genpll0_clk_init() to the function .init.text:iproc_pll_clk_setup()
-------------------------------------------------------------------------------
arm-allnoconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/cpu.c:1778:6: warning: unused variable 'cpu' [-Wunused-variable]
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
-------------------------------------------------------------------------------
x86_64-allnoconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/cpu.c:1778:6: warning: unused variable 'cpu' [-Wunused-variable]
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
-------------------------------------------------------------------------------
arm-multi_v4t_defconfig : PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
../kernel/cpu.c:1778:6: warning: unused variable 'cpu' [-Wunused-variable]
../mm/page-writeback.c:2380:15: warning: unused variable 'ret2' [-Wunused-variable]
-------------------------------------------------------------------------------
Passed with no errors, warnings or mismatches:
Hi,
The first patch fixes a potential regression we may observe on the UP
systems and the others are doing minor optimizations in the scheduler
core.
They are all tested on ARM 32 (exynos) and 64 (hikey) bit platforms.
--
viresh
Viresh Kumar (6):
sched: fair: Call cpufreq update util handlers less frequently on UP
sched: Reuse put_prev_task()
sched: fair: Pass rq to weighted_cpuload()
sched: fair: Avoid checking cfs_rq->nr_running twice
sched: fair: Drop always true parameter of update_cfs_rq_load_avg()
sched: cpufreq: Optimize cpufreq_update_this_cpu() a bit
kernel/sched/core.c | 2 +-
kernel/sched/fair.c | 107 ++++++++++++++++++++++++++-------------------------
kernel/sched/sched.h | 2 +-
3 files changed, 56 insertions(+), 55 deletions(-)
--
2.13.0.70.g6367777092d9