[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZZwBi/YmnMqm7zrO@gmail.com>
Date: Mon, 8 Jan 2024 15:07:07 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Juri Lelli <juri.lelli@...hat.com>,
Vincent Guittot <vincent.guittot@...aro.org>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Steven Rostedt <rostedt@...dmis.org>,
Ben Segall <bsegall@...gle.com>, Mel Gorman <mgorman@...e.de>,
Daniel Bristot de Oliveira <bristot@...hat.com>,
Valentin Schneider <vschneid@...hat.com>
Subject: [GIT PULL] Scheduler changes for v6.8
Linus,
Please pull the latest sched/core git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched-core-2024-01-08
# HEAD: cdb3033e191fd03da2d7da23b9cd448dfa180a8e Merge branch 'sched/urgent' into sched/core, to pick up pending v6.7 fixes for the v6.8 merge window
Scheduler changes for v6.8:
- Energy scheduling:
- Consolidate how the max compute capacity is
used in the scheduler and how we calculate
the frequency for a level of utilization.
- Rework interface between the scheduler and
the schedutil governor
- Simplify the util_est logic
- Deadline scheduler:
- Work more towards reducing SCHED_DEADLINE
starvation of low priority tasks (e.g., SCHED_OTHER)
tasks when higher priority tasks monopolize CPU
cycles, via the introduction of 'deadline servers'
(nested/2-level scheduling).
"Fair servers" to make use of this facility are
not introduced yet.
- EEVDF:
- Introduce O(1) fastpath for EEVDF task selection
- NUMA balancing:
- Tune the NUMA-balancing vma scanning logic some more,
to better distribute the probability
of a particular vma getting scanned.
- Plus misc fixes, cleanups and updates.
Thanks,
Ingo
------------------>
Abel Wu (2):
sched/eevdf: Sort the rbtree by virtual deadline
sched/eevdf: O(1) fastpath for task selection
Elliot Berman (1):
freezer,sched: Clean saved_state when restoring it during thaw
Frederic Weisbecker (2):
sched/cpuidle: Comment about timers requirements VS idle handler
sched/timers: Explain why idle task schedules out on remote timer enqueue
Paul E. McKenney (1):
sched: Use WRITE_ONCE() for p->on_rq
Peter Zijlstra (6):
sched: Unify runtime accounting across classes
sched: Remove vruntime from trace_sched_stat_runtime()
sched: Unify more update_curr*()
sched/deadline: Collect sched_dl_entity initialization
sched/deadline: Move bandwidth accounting into {en,de}queue_dl_entity
sched/deadline: Introduce deadline servers
Pierre Gondois (1):
sched/fair: Use all little CPUs for CPU-bound workloads
Raghavendra K T (1):
sched/numa: Fix mm numa_scan_seq based unconditional scan
Vincent Guittot (13):
sched/pelt: Avoid underestimation of task utilization
sched/cpufreq: Rework schedutil governor performance estimation
sched/cpufreq: Rework iowait boost
sched/topology: Add a new arch_scale_freq_ref() method
cpufreq: Use the fixed and coherent frequency for scaling capacity
cpufreq/schedutil: Use a fixed reference frequency
energy_model: Use a fixed reference frequency
cpufreq/cppc: Move and rename cppc_cpufreq_{perf_to_khz|khz_to_perf}()
cpufreq/cppc: Set the frequency used for computing the capacity
arm64/amu: Use capacity_ref_freq() to set AMU ratio
sched/fair: Remove SCHED_FEAT(UTIL_EST_FASTUP, true)
sched/fair: Simplify util_est
sched/fair: Fix tg->load when offlining a CPU
Wang Jinchao (1):
sched/fair: Remove unused 'next_buddy_marked' local variable in check_preempt_wakeup_fair()
Wenyu Huang (1):
sched/doc: Update documentation after renames and synchronize Chinese version
Yiwei Lin (1):
sched/fair: Update min_vruntime for reweight_entity() correctly
Documentation/scheduler/sched-design-CFS.rst | 8 +-
Documentation/scheduler/schedutil.rst | 7 +-
.../zh_CN/scheduler/sched-design-CFS.rst | 8 +-
.../translations/zh_CN/scheduler/schedutil.rst | 7 +-
arch/arm/include/asm/topology.h | 1 +
arch/arm64/include/asm/topology.h | 1 +
arch/arm64/kernel/topology.c | 26 +-
arch/riscv/include/asm/topology.h | 1 +
drivers/acpi/cppc_acpi.c | 104 +++++
drivers/base/arch_topology.c | 56 ++-
drivers/cpufreq/cppc_cpufreq.c | 139 +-----
drivers/cpufreq/cpufreq.c | 4 +-
include/acpi/cppc_acpi.h | 2 +
include/linux/arch_topology.h | 8 +
include/linux/cpufreq.h | 1 +
include/linux/energy_model.h | 7 +-
include/linux/mm_types.h | 3 +
include/linux/sched.h | 75 ++--
include/linux/sched/topology.h | 8 +
include/trace/events/sched.h | 15 +-
kernel/freezer.c | 1 +
kernel/sched/core.c | 140 +++---
kernel/sched/cpufreq_schedutil.c | 90 ++--
kernel/sched/deadline.c | 477 +++++++++++++--------
kernel/sched/debug.c | 18 +-
kernel/sched/fair.c | 449 ++++++++++---------
kernel/sched/features.h | 1 -
kernel/sched/idle.c | 30 ++
kernel/sched/pelt.h | 4 +-
kernel/sched/rt.c | 15 +-
kernel/sched/sched.h | 135 ++----
kernel/sched/stop_task.c | 13 +-
32 files changed, 1054 insertions(+), 800 deletions(-)
Powered by blists - more mailing lists