diff options
| author | Vikram Mulukutla <markivx@codeaurora.org> | 2017-01-10 15:19:35 -0800 |
|---|---|---|
| committer | Vikram Mulukutla <markivx@codeaurora.org> | 2017-01-18 09:45:44 -0800 |
| commit | e7dd50fa46d3e1397da7ef880c8d411a7839b566 (patch) | |
| tree | 6fcb68baaf6624453d3e6dcf14a9388992f08887 /kernel/sched/hmp.c | |
| parent | 2768f0352b7eed4213bfadf55856b5d8fdb1c9d1 (diff) | |
sched: hmp: Remove the global sysctl_sched_enable_colocation tunable
Colocation in HMP includes a tunable that turns on or off the feature
globally across all colocation groups. Supporting this tunable correctly
would result in complexity that would outweigh any foreseeable benefits.
For example, disabling the feature globally would involve deleting all
colocation groups one by one while ensuring no placement decisions are
made during the process.
Remove the tunable. Adding or removing a task from a colocation group is
still possible and so we're not losing functionality.
Change-Id: I4cb8bcdbee98d3bdd168baacbac345eca9ea8879
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
Diffstat (limited to 'kernel/sched/hmp.c')
| -rw-r--r-- | kernel/sched/hmp.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/kernel/sched/hmp.c b/kernel/sched/hmp.c index 36b0d3d8286b..935ea8a24399 100644 --- a/kernel/sched/hmp.c +++ b/kernel/sched/hmp.c @@ -704,8 +704,6 @@ __read_mostly unsigned int sysctl_sched_window_stats_policy = __read_mostly unsigned int sysctl_sched_cpu_high_irqload = (10 * NSEC_PER_MSEC); -unsigned int __read_mostly sysctl_sched_enable_colocation = 1; - /* * Enable colocation and frequency aggregation for all threads in a process. * The children inherits the group id from the parent. @@ -1278,14 +1276,12 @@ void reset_hmp_stats(struct hmp_sched_stats *stats, int reset_cra) int preferred_cluster(struct sched_cluster *cluster, struct task_struct *p) { struct related_thread_group *grp; - int rc = 0; + int rc = 1; rcu_read_lock(); grp = task_related_thread_group(p); - if (!grp || !sysctl_sched_enable_colocation) - rc = 1; - else + if (grp) rc = (grp->preferred_cluster == cluster); rcu_read_unlock(); @@ -3740,11 +3736,6 @@ static void _set_preferred_cluster(struct related_thread_group *grp) bool group_boost = false; u64 wallclock; - if (!sysctl_sched_enable_colocation) { - grp->last_update = sched_ktime_clock(); - return; - } - if (list_empty(&grp->tasks)) return; |
