sched: steal tasks to improve CPU utilization
Cheng Jian (3):
disable stealing by default
sched/fair: introduce SCHED_STEAL
config: enable CONFIG_SCHED_STEAL by default
Steve Sistare (10):
sched: Provide sparsemask, a reduced contention bitmap
sched/topology: Provide hooks to allocate data shared per LLC
sched/topology: Provide cfs_overload_cpus bitmap
sched/fair: Dynamically update cfs_overload_cpus
sched/fair: Hoist idle_stamp up from idle_balance
sched/fair: Generalize the detach_task interface
sched/fair: Provide can_migrate_task_llc
sched/fair: Steal work from an overloaded CPU when CPU goes idle
sched/fair: disable stealing if too many NUMA nodes
sched/fair: Provide idle search schedstats
arch/arm64/configs/openeuler_defconfig | 1 +
arch/x86/configs/openeuler_defconfig | 1 +
include/linux/sched/topology.h | 3 +
init/Kconfig | 15 ++
kernel/sched/core.c | 35 ++-
kernel/sched/fair.c | 360 +++++++++++++++++++++++--
kernel/sched/features.h | 8 +
kernel/sched/sched.h | 21 ++
kernel/sched/sparsemask.h | 210 +++++++++++++++
kernel/sched/stats.c | 15 ++
kernel/sched/stats.h | 20 ++
kernel/sched/topology.c | 141 +++++++++-
12 files changed, 804 insertions(+), 26 deletions(-)
create mode 100644 kernel/sched/sparsemask.h
--
2.25.1