Introduce NUMA isolation and consolidation.
Guan Jing (1):
sched: Add can_migrate_task hook
Hui Tang (9):
sched: Introduce CONFIG_TASK_PLACEMENT_BY_CPU_RANGE
sched: Some fixes for select_rq hook
bpf:programmable: Add nodemask operation collection
sched: Introduce task relationship by net and memory
bpf:programmable: Add helper to get memory and net relationship
sched: Add ioctl to get relationship
sched: Update numa group preferred node periodically
bpf:programmable: Add helper to set preferred node
sched: Introduce CONFIG_QOS_SCHED_NUMA_ICON
fs/exec.c | 2 +
include/linux/sched.h | 58 +++-
include/linux/sched/relationship.h | 202 +++++++++++++
include/linux/sched_hook_defs.h | 4 +
include/uapi/linux/bpf.h | 50 ++++
include/uapi/linux/sched_ctrl.h | 57 ++++
init/Kconfig | 28 ++
init/init_task.c | 3 +
kernel/fork.c | 13 +
kernel/sched/Makefile | 2 +
kernel/sched/bpf_sched.c | 149 ++++++++++
kernel/sched/core.c | 7 +
kernel/sched/debug.c | 2 +
kernel/sched/fair.c | 302 ++++++++++++++++++--
kernel/sched/numa_icon.c | 144 ++++++++++
kernel/sched/numa_icon.h | 43 +++
kernel/sched/relationship.c | 436 +++++++++++++++++++++++++++++
kernel/sched/relationship_ioctl.c | 142 ++++++++++
kernel/sched/sched.h | 2 +
scripts/bpf_helpers_doc.py | 12 +
tools/include/uapi/linux/bpf.h | 50 ++++
tools/lib/bpf/libbpf_sched.h | 160 ++++++++++-
22 files changed, 1843 insertions(+), 25 deletions(-)
create mode 100644 include/linux/sched/relationship.h
create mode 100644 include/uapi/linux/sched_ctrl.h
create mode 100644 kernel/sched/numa_icon.c
create mode 100644 kernel/sched/numa_icon.h
create mode 100644 kernel/sched/relationship.c
create mode 100644 kernel/sched/relationship_ioctl.c
--
2.34.1