linux-uconsole/kernel/sched
Quentin Perret 549020c814 ANDROID: sched: Disable find_best_target() by default
Now that the mainline EAS wake-up path has been extended to cope with
prefer-idle tasks, the need for a dedicated Android-specific wake-up
routine (find_best_target()) becomes less clear. Indeed, main reasons
for introducting find_best_target() in the first place were:

  1. the energy_diff function was very slow, so we couldn't afford to
     use it on all CPUs for each wake-up for latency reasons;

  2. schedtune provides additional information about tasks (the
     prefer-idle flag in particular) which needed to be taken into
     account in the placement algorithm.

Now that the energy diff calculation is much faster (with the simplified
energy model) and that the EAS path is aware of prefer-idle tasks, there
is no clear reason to use find_best_target() any more.

So, let's disable it for now to minimize the amount of out-of-tree code
used in the scheduler. If using the mainline path doesn't cause
regressions, it is a good sign find_best_target() can be removed safely,
eventually. Otherwise, reverting back to the old behaviour is trivial
since this patch only changes the sched_feat default, but doesn't remove
the fbt() code path.

Bug: 120440300
Change-Id: Idb5d68a3c4af7d2212e0922ab6d9a089170b5e1c
Signed-off-by: Quentin Perret <quentin.perret@arm.com>
2019-03-27 15:58:02 +00:00
..
autogroup.c ANDROID: sched/autogroup: Define autogroup_path() for !CONFIG_SCHED_DEBUG 2018-10-26 12:44:03 +01:00
autogroup.h sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
clock.c sched/clock: Disable interrupts when calling generic_sched_clock_init() 2018-07-30 19:33:35 +02:00
completion.c sched/Documentation: Update wake_up() & co. memory-barrier guarantees 2018-07-17 09:30:34 +02:00
core.c UPSTREAM: sched/fair: Update scale invariance of PELT 2019-03-26 14:22:50 +00:00
cpuacct.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cpudeadline.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cpudeadline.h sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cpufreq.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cpufreq_schedutil.c ANDROID: sched: Align EAS with upstream 2019-01-04 09:17:54 +00:00
cpupri.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cpupri.h sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
cputime.c ANDROID: cpufreq: track per-task time in state 2019-03-06 15:57:25 +00:00
deadline.c UPSTREAM: sched/fair: Update scale invariance of PELT 2019-03-26 14:22:50 +00:00
debug.c sched/debug: Fix potential deadlock when writing to sched_features 2018-09-10 10:13:45 +02:00
fair.c ANDROID: sched/fair: Make the EAS wake-up prefer-idle aware 2019-03-27 15:58:02 +00:00
features.h ANDROID: sched: Disable find_best_target() by default 2019-03-27 15:58:02 +00:00
idle.c FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide 2018-10-26 12:15:52 +01:00
isolation.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
loadavg.c UPSTREAM: sched: loadavg: make calc_load_n() public 2019-03-21 16:25:27 -07:00
Makefile UPSTREAM: psi: pressure stall information for CPU, memory, and IO 2019-03-21 16:25:27 -07:00
membarrier.c sched/headers: Simplify and clean up header usage in the scheduler 2018-03-04 12:39:29 +01:00
pelt.c UPSTREAM: sched/fair: Update scale invariance of PELT 2019-03-26 14:22:50 +00:00
pelt.h UPSTREAM: sched/fair: Update scale invariance of PELT 2019-03-26 14:22:50 +00:00
psi.c FROMLIST: psi: introduce psi monitor 2019-03-22 23:07:14 +00:00
rt.c UPSTREAM: sched/fair: Update scale invariance of PELT 2019-03-26 14:22:50 +00:00
sched-pelt.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sched.h UPSTREAM: sched/pelt: Skip updating util_est when utilization is higher than CPU's capacity 2019-03-26 14:22:50 +00:00
stats.c proc: introduce proc_create_seq{,_data} 2018-05-16 07:23:35 +02:00
stats.h UPSTREAM: psi: make disabling/enabling easier for vendor kernels 2019-03-21 16:25:27 -07:00
stop_task.c FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide 2018-10-26 12:15:52 +01:00
swait.c sched/swait: Rename to exclusive 2018-06-20 11:35:56 +02:00
topology.c Revert "FROMLIST: sched: Introduce a sysctl for Energy Aware Scheduling" 2019-01-04 09:17:55 +00:00
tune.c ANDROID: Add hold functionality to schedtune CPU boost 2018-10-26 12:44:06 +01:00
tune.h ANDROID: sched/rt: Add schedtune accounting to rt task enqueue/dequeue 2018-10-26 12:44:06 +01:00
wait.c sched/wait: assert the wait_queue_head lock is held in __wake_up_common 2018-08-22 10:52:47 -07:00
wait_bit.c sched/wait: Improve __var_waitqueue() code generation 2018-03-20 08:23:25 +01:00