Date Mon, 24 Dec 2018 23:45:09 +0100 From Ingo Molnar <> Subject [GIT PULL] scheduler changes for v4.21 Linus,



Please pull the latest sched-core-for-linus git tree from:



git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched-core-for-linus



# HEAD: 732cd75b8c920d3727e69957b14faa7c2d7c3b75 sched/fair: Select an energy-efficient CPU on task wake-up



The main changes in this cycle were:



- Introduce "Energy Aware Scheduling" - by Quentin Perret. This is a

coherent topology description of CPUs in cooperation with the PM

subsystem, with the goal to schedule more energy-efficiently on

assymetric SMP platform - such as waking up tasks to the more

energy-efficient CPUs first, as long as the system isn't

oversubscribed.



For details of the design, see:



https://marc.info/?l=linux-kernel&m=153243513908731&w=2



- Misc cleanups and smaller enhancements.



Thanks,



Ingo



------------------>

Ingo Molnar (1):

sched: Fix various typos in comments



Morten Rasmussen (1):

sched/fair: Add over-utilization/tipping point indicator



Muchun Song (2):

sched/core: Introduce set_next_task() helper for better code readability

sched/fair: Make some variables static



Patrick Bellasi (2):

sched/fair: Mask UTIL_AVG_UNCHANGED usages

sched/fair: Add lsub_positive() and use it consistently



Quentin Perret (11):

sched/topology: Relocate arch_scale_cpu_capacity() to the internal header

sched/cpufreq: Prepare schedutil for Energy Aware Scheduling

PM: Introduce an Energy Model management framework

sched/topology: Reference the Energy Model of CPUs when available

sched/topology: Add lowest CPU asymmetry sched_domain level pointer

sched/topology: Disable EAS on inappropriate platforms

sched/topology: Make Energy Aware Scheduling depend on schedutil

sched/toplogy: Introduce the 'sched_energy_present' static key

sched/fair: Clean-up update_sg_lb_stats parameters

sched/fair: Introduce an energy estimation helper function

sched/fair: Select an energy-efficient CPU on task wake-up



Valentin Schneider (2):

sched/fair: Clean up load_balance() condition

sched/fair: Don't increase sd->balance_interval on newidle balance



Vincent Guittot (1):

sched/topology: Remove the ::smt_gain field from 'struct sched_domain'



Viresh Kumar (2):

sched/core: Create task_has_idle_policy() helper

sched/core: Clean up the #ifdef block in add_nr_running()



Yangtao Li (1):

sched/core: Remove unnecessary unlikely() in push_*_task()





drivers/cpufreq/cpufreq.c | 1 +

include/linux/cpufreq.h | 8 +

include/linux/energy_model.h | 187 +++++++++++++++++++

include/linux/sched.h | 4 +-

include/linux/sched/cpufreq.h | 6 +

include/linux/sched/isolation.h | 4 +-

include/linux/sched/mm.h | 2 +-

include/linux/sched/stat.h | 2 +-

include/linux/sched/topology.h | 17 +-

kernel/power/Kconfig | 15 ++

kernel/power/Makefile | 2 +

kernel/power/energy_model.c | 201 ++++++++++++++++++++

kernel/sched/core.c | 6 +-

kernel/sched/cpufreq_schedutil.c | 90 +++++++--

kernel/sched/cputime.c | 2 +-

kernel/sched/deadline.c | 25 ++-

kernel/sched/debug.c | 2 +-

kernel/sched/fair.c | 385 +++++++++++++++++++++++++++++++++------

kernel/sched/isolation.c | 14 +-

kernel/sched/rt.c | 28 ++-

kernel/sched/sched.h | 97 +++++++---

kernel/sched/topology.c | 231 ++++++++++++++++++++++-

22 files changed, 1179 insertions(+), 150 deletions(-)

create mode 100644 include/linux/energy_model.h

create mode 100644 kernel/power/energy_model.c



