All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Dietmar Eggemann <dietmar.eggemann@arm.com>,
	Mel Gorman <mgorman@suse.de>, Juri Lelli <juri.lelli@redhat.com>
Subject: [GIT PULL] scheduler changes for v5.7
Date: Mon, 30 Mar 2020 19:31:59 +0200	[thread overview]
Message-ID: <20200330173159.GA128106@gmail.com> (raw)

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: 313f16e2e35abb833eab5bdebc6ae30699adca18 Merge branch 'sched/rt' into sched/core, to pick up completed topic tree

The main changes in this cycle are:

 - Various NUMA scheduling updates: harmonize the load-balancer and NUMA 
   placement logic to not work against each other. The intended result is 
   better locality, better utilization and fewer migrations.

 - Introduce Thermal Pressure tracking and optimizations, to improve task 
   placement on thermally overloaded systems.

 - Implement frequency invariant scheduler accounting on (some) x86 CPUs. 
   This is done by observing and sampling the 'recent' CPU frequency 
   average at ~tick boundaries. The CPU provides this data via the 
   APERF/MPERF MSRs. This hopefully makes our capacity estimates more 
   precise and keeps tasks on the same CPU better even if it might seem 
   overloaded at a lower momentary frequency. (As usual, turbo mode is a 
   complication that we resolve by observing the maximum frequency and 
   renormalizing to it.)

 - Add asymmetric CPU capacity wakeup scan to improve capacity 
   utilization on asymmetric topologies. (big.LITTLE systems)

 - PSI fixes and optimizations.

 - RT scheduling capacity awareness fixes & improvements.

 - Optimize the CONFIG_RT_GROUP_SCHED constraints code.

 - Misc fixes, cleanups and optimizations - see the changelog for details.

 Thanks,

	Ingo

------------------>
Chris Wilson (1):
      sched/vtime: Prevent unstable evaluation of WARN(vtime->state)

Giovanni Gherdovich (6):
      x86, sched: Add support for frequency invariance
      x86, sched: Add support for frequency invariance on SKYLAKE_X
      x86, sched: Add support for frequency invariance on XEON_PHI_KNL/KNM
      x86, sched: Add support for frequency invariance on ATOM_GOLDMONT*
      x86, sched: Add support for frequency invariance on ATOM
      x86/intel_pstate: Handle runtime turbo disablement/enablement in frequency invariance

Ingo Molnar (1):
      thermal/cpu-cooling, sched/core: Move the arch_set_thermal_pressure() API to generic scheduler code

Jann Horn (1):
      threads: Update PID limit comment according to futex UAPI change

Johannes Weiner (3):
      psi: Fix cpu.pressure for cpu.max and competing cgroups
      psi: Optimize switching tasks inside shared cgroups
      MAINTAINERS: Add maintenance information for psi

Konstantin Khlebnikov (1):
      sched/rt: Optimize checking group RT scheduler constraints

Liang Chen (1):
      kthread: Do not preempt current task if it is going to call schedule()

Mel Gorman (8):
      sched/numa: Trace when no candidate CPU was found on the preferred node
      sched/numa: Distinguish between the different task_numa_migrate() failure cases
      sched/numa: Use similar logic to the load balancer for moving between domains with spare capacity
      sched/numa: Prefer using an idle CPU as a migration target instead of comparing tasks
      sched/numa: Find an alternative idle CPU if the CPU is part of an active NUMA balance
      sched/numa: Bias swapping tasks based on their preferred node
      sched/numa: Stop an exhastive search if a reasonable swap candidate or idle CPU is found
      sched/numa: Acquire RCU lock for checking idle cores during NUMA balancing

Michael Wang (1):
      sched: Avoid scale real weight down to zero

Morten Rasmussen (3):
      sched/fair: Add asymmetric CPU capacity wakeup scan
      sched/topology: Remove SD_BALANCE_WAKE on asymmetric capacity systems
      sched/fair: Remove wake_cap()

Paul Turner (1):
      sched/core: Distribute tasks within affinity masks

Qais Yousef (6):
      sched/rt: cpupri_find: Implement fallback mechanism for !fit case
      sched/rt: Re-instate old behavior in select_task_rq_rt()
      sched/rt: Optimize cpupri_find() on non-heterogenous systems
      sched/rt: Allow pulling unfitting task
      sched/rt: Remove unnecessary push for unfit tasks
      sched/rt: cpupri_find: Trigger a full search as fallback

Scott Wood (1):
      sched/core: Remove duplicate assignment in sched_tick_remote()

Srikar Dronamraju (1):
      sched/fair: Optimize select_idle_core()

Tao Zhou (1):
      sched/fair: Fix condition of avg_load calculation

Thara Gopinath (9):
      sched/pelt: Add support to track thermal pressure
      sched/topology: Add callback to read per CPU thermal pressure
      drivers/base/arch_topology: Add infrastructure to store and update instantaneous thermal pressure
      arm64/topology: Populate arch_scale_thermal_pressure() for arm64 platforms
      arm/topology: Populate arch_scale_thermal_pressure() for ARM platforms
      sched/fair: Enable periodic update of average thermal pressure
      sched/fair: Update cpu_capacity to reflect thermal pressure
      thermal/cpu-cooling: Update thermal pressure in case of a maximum frequency capping
      sched/fair: Enable tuning of decay period

Thomas Gleixner (2):
      sched/rt: Provide migrate_disable/enable() inlines
      sched: Provide cant_migrate()

Valentin Schneider (4):
      sched/core: Remove for_each_lower_domain()
      sched/fair: Fix kernel build warning in test_idle_cores() for !SMT NUMA
      sched/topology: Don't enable EAS on SMT systems
      arm64: defconfig: enable CONFIG_SCHED_SMT

Vincent Guittot (9):
      sched/fair: Reorder enqueue/dequeue_task_fair path
      sched/numa: Replace runnable_load_avg by load_avg
      sched/pelt: Remove unused runnable load average
      sched/pelt: Add a new runnable average signal
      sched/fair: Take into account runnable_avg to classify group
      sched/fair: Fix runnable_avg for throttled cfs
      sched/fair: Fix reordering of enqueue/dequeue_task_fair()
      sched/fair: Fix enqueue_task_fair warning
      sched/fair: Improve spreading of utilization

Yafang Shao (1):
      psi: Move PF_MEMSTALL out of task->flags

Yu Chen (1):
      sched/deadline: Make two functions static


 Documentation/admin-guide/kernel-parameters.txt |  16 +
 Documentation/robust-futex-ABI.txt              |  14 +-
 MAINTAINERS                                     |   6 +
 arch/arm/include/asm/topology.h                 |   3 +
 arch/arm64/configs/defconfig                    |   1 +
 arch/arm64/include/asm/topology.h               |   3 +
 arch/x86/include/asm/topology.h                 |  25 +
 arch/x86/kernel/smpboot.c                       | 290 ++++++++-
 drivers/cpufreq/intel_pstate.c                  |   1 +
 drivers/thermal/cpufreq_cooling.c               |  19 +-
 include/linux/arch_topology.h                   |  10 +
 include/linux/cpumask.h                         |   7 +
 include/linux/kernel.h                          |   7 +
 include/linux/preempt.h                         |  30 +
 include/linux/psi.h                             |   2 +
 include/linux/psi_types.h                       |  10 +-
 include/linux/sched.h                           |  37 +-
 include/linux/sched/topology.h                  |   8 +
 include/linux/threads.h                         |   2 +-
 include/trace/events/sched.h                    |  53 +-
 init/Kconfig                                    |   4 +
 kernel/kthread.c                                |  17 +-
 kernel/sched/core.c                             |  27 +-
 kernel/sched/cpupri.c                           | 158 +++--
 kernel/sched/cpupri.h                           |   6 +-
 kernel/sched/cputime.c                          |  41 +-
 kernel/sched/deadline.c                         |   6 +-
 kernel/sched/debug.c                            |  17 +-
 kernel/sched/fair.c                             | 791 ++++++++++++++++--------
 kernel/sched/pelt.c                             |  90 ++-
 kernel/sched/pelt.h                             |  31 +
 kernel/sched/psi.c                              | 111 +++-
 kernel/sched/rt.c                               |  66 +-
 kernel/sched/sched.h                            |  69 ++-
 kernel/sched/stats.h                            |  31 +-
 kernel/sched/topology.c                         |  27 +-
 lib/cpumask.c                                   |  29 +
 37 files changed, 1552 insertions(+), 513 deletions(-)

             reply	other threads:[~2020-03-30 17:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-30 17:31 Ingo Molnar [this message]
2020-03-31  0:25 ` [GIT PULL] scheduler changes for v5.7 pr-tracker-bot
2020-03-31 10:33 ` Mel Gorman
2020-03-31 13:48   ` Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200330173159.GA128106@gmail.com \
    --to=mingo@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=dietmar.eggemann@arm.com \
    --cc=juri.lelli@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=vincent.guittot@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.