lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200330173159.GA128106@gmail.com>
Date:   Mon, 30 Mar 2020 19:31:59 +0200
From:   Ingo Molnar <mingo@...nel.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     linux-kernel@...r.kernel.org,
        Peter Zijlstra <a.p.zijlstra@...llo.nl>,
        Thomas Gleixner <tglx@...utronix.de>,
        Andrew Morton <akpm@...ux-foundation.org>,
        Vincent Guittot <vincent.guittot@...aro.org>,
        Dietmar Eggemann <dietmar.eggemann@....com>,
        Mel Gorman <mgorman@...e.de>,
        Juri Lelli <juri.lelli@...hat.com>
Subject: [GIT PULL] scheduler changes for v5.7

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(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ