diff options
| author | Steve Muckle <smuckle@codeaurora.org> | 2014-06-12 10:44:46 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 19:59:21 -0700 |
| commit | ec7d8cc0766bb640f6bb12f7c7fc4f5b65d9a272 (patch) | |
| tree | d75f70267a9644c56a7b5ea2877a1b01068e444c /kernel | |
| parent | 6e8842f8be8606761162cd1cb5ab75c037d5f359 (diff) | |
sched: add power aware scheduling sysctl
The sched_enable_power_aware sysctl will control whether
or not scheduling decisions are influenced by the power
consumption of individual CPUs.
Change-Id: I312f892cf76a3fccc4ecc8aa6703908b205267f0
Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched/fair.c | 8 | ||||
| -rw-r--r-- | kernel/sysctl.c | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index fdf879b9e51c..28151d829d30 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -2575,6 +2575,12 @@ unsigned int __read_mostly sysctl_sched_enable_hmp_task_placement = 1; unsigned int __read_mostly sysctl_sched_mostly_idle_nr_run = 3; /* + * Control whether or not individual CPU power consumption is used to + * guide task placement. + */ +unsigned int __read_mostly sysctl_sched_enable_power_aware = 1; + +/* * Conversion of *_pct to absolute form is based on max_task_load(). * * For example: @@ -2980,6 +2986,8 @@ static inline int nr_big_tasks(struct rq *rq) #else /* CONFIG_SCHED_HMP */ +#define sysctl_sched_enable_power_aware 0 + static inline int select_best_cpu(struct task_struct *p, int target) { return 0; diff --git a/kernel/sysctl.c b/kernel/sysctl.c index edf9fa68004b..06fe2f6591e7 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -365,6 +365,13 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_hmp_proc_update_handler, }, + { + .procname = "sched_enable_power_aware", + .data = &sysctl_sched_enable_power_aware, + .maxlen = sizeof(unsigned int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, #endif /* CONFIG_SCHED_HMP */ #ifdef CONFIG_SCHED_DEBUG { |
