android_kernel_oneplus_msm8998/kernel/sched
Joel Fernandes d194ba5d71 ANDROID: sched/rt: schedtune: Add boost retention to RT
Boosted RT tasks can be deboosted quickly, this makes boost usless
for RT tasks and causes lots of glitching. Use timers to prevent
de-boost too soon and wait for long enough such that next enqueue
happens after a threshold.

While this can be solved in the governor, there are following
advantages:
- The approach used is governor-independent
- Reduces boost group lock contention for frequently sleepers/wakers
- Works with schedfreq without any other schedfreq hacks.

Bug: 30210506

Change-Id: I41788b235586988be446505deb7c0529758a9898
Signed-off-by: Joel Fernandes <joelaf@google.com>
2017-11-07 23:47:42 +00:00
..
auto_group.c sched/autogroup: Fix autogroup_move_group() to never skip sched_move_task() 2017-10-27 10:23:17 +02:00
auto_group.h sched, timer: Convert usages of ACCESS_ONCE() in the scheduler to READ_ONCE()/WRITE_ONCE() 2015-05-08 12:11:32 +02:00
clock.c treewide: Remove old email address 2015-11-23 09:44:58 +01:00
completion.c sched/completion: Serialize completion_done() with complete() 2015-02-18 14:27:40 +01:00
core.c ANDROID: sched/rt: schedtune: Add boost retention to RT 2017-11-07 23:47:42 +00:00
cpuacct.c cgroup: rename cgroup_subsys->base_cftypes to ->legacy_cftypes 2014-07-15 11:05:09 -04:00
cpuacct.h
cpudeadline.c sched/deadline: Unify dl_time_before() usage 2015-09-23 09:51:25 +02:00
cpudeadline.h sched/deadline: Unify dl_time_before() usage 2015-09-23 09:51:25 +02:00
cpufreq.c sched: backport cpufreq hooks from 4.9-rc4 2017-06-02 08:01:50 -07:00
cpufreq_sched.c cpufreq/sched: Use cpu max freq rather than policy max 2017-10-23 12:30:46 +01:00
cpufreq_schedutil.c cpufreq: schedutil: clamp util to CPU maximum capacity 2017-10-24 15:49:27 +00:00
cpupri.c Merge commit '3cf2f34' into sched/core, to fix build error 2014-06-12 13:46:37 +02:00
cpupri.h sched/cpupri: Remove unnecessary definitions in cpupri.h 2014-11-16 10:58:59 +01:00
cputime.c Merge remote-tracking branch 'common/android-4.4' into android-4.4.y 2016-09-13 14:47:50 -07:00
deadline.c FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide 2017-10-27 18:50:59 +00:00
debug.c sched/fair: Add eas (& cas) specific rq, sd and task stats 2017-06-02 08:01:54 -07:00
energy.c sched: Support for extracting EAS energy costs from DT 2016-05-10 16:49:53 +08:00
fair.c sched: EAS: Fix the calculation of group util in group_idle_state() 2017-11-02 18:01:19 +00:00
features.h sched: Add Kconfig option DEFAULT_USE_ENERGY_AWARE to set ENERGY_AWARE feature flag 2016-09-21 14:29:06 -07:00
idle.c vmstat: make vmstat_updater deferrable again and shut down on idle 2016-08-11 14:26:53 -07:00
idle_task.c FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide 2017-10-27 18:50:59 +00:00
loadavg.c sched/loadavg: Avoid loadavg spikes caused by delayed NO_HZ accounting 2017-07-05 14:37:21 +02:00
Makefile BACKPORT: cpufreq: schedutil: New governor based on scheduler utilization data 2017-06-02 08:01:50 -07:00
rt.c ANDROID: sched/rt: schedtune: Add boost retention to RT 2017-11-07 23:47:42 +00:00
sched.h ANDROID: sched/rt: schedtune: Add boost retention to RT 2017-11-07 23:47:42 +00:00
stats.c schedstats/eas: guard properly to avoid breaking non-smp schedstats users 2017-06-03 15:03:03 +01:00
stats.h sched/stat: Simplify the sched_info accounting dependency 2015-07-04 10:04:30 +02:00
stop_task.c FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide 2017-10-27 18:50:59 +00:00
tune.c Revert "ANDROID: sched/tune: Initialize raw_spin_lock in boosted_groups" 2017-09-23 01:25:03 +00:00
tune.h sched/tune: Introducing a new schedtune attribute prefer_idle 2016-08-11 14:26:49 -07:00
wait.c sched/wait: Fix the signal handling fix 2015-12-13 14:30:59 -08:00
walt.c sched: walt: Correct WALT window size initialization 2017-10-27 11:58:48 -07:00
walt.h sched: walt: Correct WALT window size initialization 2017-10-27 11:58:48 -07:00