From ef1e55638d7d37fdee298ff8821b359052ef17ce Mon Sep 17 00:00:00 2001 From: Syed Rameez Mustafa Date: Mon, 25 Jul 2016 17:10:46 -0700 Subject: sched: Remove unused migration notifier code. Migration notifiers were created to aid the CPU-boost driver manage CPU frequencies when tasks migrate from one CPU to another. Over time with the evolution of scheduler guided frequency, the scheduler now directly manages load when tasks migrate. Consequently the CPU-boost driver no longer makes use of this information. Remove unused code pertaining to this feature. Change-Id: I3529e4356e15e342a5fcfbcf3654396752a1d7cd Signed-off-by: Syed Rameez Mustafa --- kernel/sysctl.c | 7 ------- 1 file changed, 7 deletions(-) (limited to 'kernel/sysctl.c') diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 81fbed978da3..2e77841e4eda 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -292,13 +292,6 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = proc_dointvec, }, - { - .procname = "sched_wakeup_load_threshold", - .data = &sysctl_sched_wakeup_load_threshold, - .maxlen = sizeof(unsigned int), - .mode = 0644, - .proc_handler = proc_dointvec, - }, #ifdef CONFIG_SCHED_FREQ_INPUT { .procname = "sched_freq_inc_notify", -- cgit v1.2.3 From 62f2600ce97a18db675289ae471286267d7d268e Mon Sep 17 00:00:00 2001 From: Syed Rameez Mustafa Date: Thu, 28 Jul 2016 19:18:08 -0700 Subject: sched: Remove all existence of CONFIG_SCHED_FREQ_INPUT CONFIG_SCHED_FREQ_INPUT was created to keep parts of the scheduler dealing with frequency separate from other parts of the scheduler that deal with task placement. However, overtime the two features have become intricately linked whereby SCHED_FREQ_INPUT cannot be turned on without having SCHED_HMP turned on as well. Given this complex inter-dependency and the fact that all old, existing and future targets use both config options, remove this unnecessary feature separation. It will aid in making kernel upgrades a lot simpler and faster. Change-Id: Ia20e40d8a088d50909cc28f5be758fa3e9a4af6f Signed-off-by: Syed Rameez Mustafa --- kernel/sysctl.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'kernel/sysctl.c') diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 2e77841e4eda..8b9ca50dc53f 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -292,7 +292,7 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = proc_dointvec, }, -#ifdef CONFIG_SCHED_FREQ_INPUT +#ifdef CONFIG_SCHED_HMP { .procname = "sched_freq_inc_notify", .data = &sysctl_sched_freq_inc_notify, @@ -309,8 +309,6 @@ static struct ctl_table kern_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &zero, }, -#endif -#ifdef CONFIG_SCHED_HMP { .procname = "sched_cpu_high_irqload", .data = &sysctl_sched_cpu_high_irqload, @@ -407,7 +405,6 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_hmp_proc_update_handler, }, -#ifdef CONFIG_SCHED_FREQ_INPUT { .procname = "sched_new_task_windows", .data = &sysctl_sched_new_task_windows, @@ -430,7 +427,6 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_window_update_handler, }, -#endif { .procname = "sched_boost", .data = &sysctl_sched_boost, -- cgit v1.2.3 From 5ddfbfec063cd077dd55df47f8acf5df95a87477 Mon Sep 17 00:00:00 2001 From: Pavankumar Kondeti Date: Wed, 21 Oct 2015 16:04:46 +0530 Subject: sched: inherit the group id from the group leader When sysctl_sched_enable_thread_grouping is set to 1, any new tasks created are put in the same group as their group leader. Change-Id: If1837dd7c8120c8b097cfffa1dc52eb4781f1641 Signed-off-by: Pavankumar Kondeti --- kernel/sysctl.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'kernel/sysctl.c') diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 8b9ca50dc53f..ac34212f6881 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -405,6 +405,13 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_hmp_proc_update_handler, }, + { + .procname = "sched_enable_thread_grouping", + .data = &sysctl_sched_enable_thread_grouping, + .maxlen = sizeof(unsigned int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, { .procname = "sched_new_task_windows", .data = &sysctl_sched_new_task_windows, -- cgit v1.2.3 From 078568e4259847be3cecf72052606abb93b7eed0 Mon Sep 17 00:00:00 2001 From: Pavankumar Kondeti Date: Tue, 31 May 2016 12:34:52 +0530 Subject: sched: Introduce sched_freq_aggregate_threshold tunable Do the aggregation for frequency only when the total group busy time is above sched_freq_aggregate_threshold. This filtering is especially needed for the cases where groups are created by including all threads of an application process. This knob can be tuned to apply aggregation only for the heavy workload applications. When this knob is enabled and load is aggregated, the load is not clipped to 100% @ current frequency to ramp up the frequency faster. Change-Id: Icfd91c85938def101a989af3597d3dcaa8026d16 Signed-off-by: Pavankumar Kondeti --- kernel/sysctl.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'kernel/sysctl.c') diff --git a/kernel/sysctl.c b/kernel/sysctl.c index ac34212f6881..07fef40d1274 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -434,6 +434,13 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = sched_window_update_handler, }, + { + .procname = "sched_freq_aggregate_threshold", + .data = &sysctl_sched_freq_aggregate_threshold_pct, + .maxlen = sizeof(unsigned int), + .mode = 0644, + .proc_handler = sched_hmp_proc_update_handler, + }, { .procname = "sched_boost", .data = &sysctl_sched_boost, -- cgit v1.2.3