The patch sets include two parts:
1. patch 1~15: Rebase smart_grid from openeuler-1.0-LTS to OLK-5.10
2. patch 16~19: introduce smart_grid zone qos and cpufreq
Since v4:
1. Place the highest level task in current domain level itself in
sched_grid_prefer_cpus
Since v3:
1. fix CI warning
Since v2:
1. static alloc sg_zone cpumask.
2. fix some warning
Hui Tang (13):
sched: Introduce smart grid scheduling strategy for cfs
sched: fix smart grid usage count
sched: fix WARN found by deadlock detect
sched: Fix possible deadlock in tg_set_dynamic_affinity_mode
sched: Fix negative count for jump label
sched: Fix timer storm for smart grid
sched: fix dereference NULL pointers
sched: Fix memory leak on error branch
sched: clear credit count in error branch
sched: Adjust few parameters range for smart grid
sched: Delete redundant updates to p->prefer_cpus
sched: Fix memory leak for smart grid
sched: Fix null pointer derefrence for sd->span
Wang ShaoBo (2):
sched: smart grid: init sched_grid_qos structure on QOS purpose
config: enable CONFIG_QOS_SCHED_SMART_GRID by default
Yipeng Zou (4):
sched: introduce smart grid qos zone
smart_grid: introduce /proc/pid/smart_grid_level
smart_grid: introduce smart_grid_strategy_ctrl sysctl
smart_grid: cpufreq: introduce smart_grid cpufreq control
arch/arm64/configs/openeuler_defconfig | 1 +
drivers/cpufreq/cpufreq.c | 234 ++++++++++++
fs/proc/array.c | 13 +
fs/proc/base.c | 76 ++++
include/linux/cpufreq.h | 11 +
include/linux/sched.h | 22 ++
include/linux/sched/grid_qos.h | 135 +++++++
include/linux/sched/sysctl.h | 5 +
init/Kconfig | 13 +
kernel/fork.c | 15 +-
kernel/sched/Makefile | 1 +
kernel/sched/core.c | 160 +++++++-
kernel/sched/fair.c | 496 ++++++++++++++++++++++++-
kernel/sched/grid/Makefile | 2 +
kernel/sched/grid/internal.h | 6 +
kernel/sched/grid/power.c | 27 ++
kernel/sched/grid/qos.c | 273 ++++++++++++++
kernel/sched/grid/stat.c | 47 +++
kernel/sched/sched.h | 48 +++
kernel/sysctl.c | 22 +-
mm/mempolicy.c | 12 +-
21 files changed, 1601 insertions(+), 18 deletions(-)
create mode 100644 include/linux/sched/grid_qos.h
create mode 100644 kernel/sched/grid/Makefile
create mode 100644 kernel/sched/grid/internal.h
create mode 100644 kernel/sched/grid/power.c
create mode 100644 kernel/sched/grid/qos.c
create mode 100644 kernel/sched/grid/stat.c
--
2.34.1