[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKfTPtB01UKskH_a1h1LtjoRq6O3NnqQuuh1L50O-yHRLQm-iw@mail.gmail.com>
Date: Mon, 13 May 2024 09:43:25 +0200
From: Vincent Guittot <vincent.guittot@...aro.org>
To: Ingo Molnar <mingo@...nel.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>, linux-kernel@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>, Thomas Gleixner <tglx@...utronix.de>,
Juri Lelli <juri.lelli@...hat.com>, 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>,
Shrikanth Hegde <sshegde@...ux.ibm.com>
Subject: Re: [GIT PULL] Scheduler changes for v6.10
Hi Ingo,
On Mon, 13 May 2024 at 08:35, Ingo Molnar <mingo@...nel.org> wrote:
>
> 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-05-13
>
> # HEAD: 97450eb909658573dcacc1063b06d3d08642c0c1 sched/pelt: Remove shift of thermal clock
>
> Scheduler changes for v6.10:
>
> - Add cpufreq pressure feedback for the scheduler
>
> - Rework misfit load-balancing wrt. affinity restrictions
>
> - Clean up and simplify the code around ::overutilized and
> ::overload access.
>
> - Simplify sched_balance_newidle()
>
> - Bump SCHEDSTAT_VERSION to 16 due to a cleanup of CPU_MAX_IDLE_TYPES
> handling that changed the output.
>
> - Rework & clean up <asm/vtime.h> interactions wrt. arch_vtime_task_switch()
>
> - Reorganize, clean up and unify most of the higher level
> scheduler balancing function names around the sched_balance_*()
> prefix.
>
> - Simplify the balancing flag code (sched_balance_running)
>
> - Miscellaneous cleanups & fixes
>
> Thanks,
>
> Ingo
>
> ------------------>
> Alexander Gordeev (5):
> sched/vtime: Remove confusing arch_vtime_task_switch() declaration
> sched/vtime: Get rid of generic vtime_task_switch() implementation
> s390/vtime: Remove unused __ARCH_HAS_VTIME_TASK_SWITCH leftover
> s390/irq,nmi: Include <asm/vtime.h> header directly
> sched/vtime: Do not include <asm/vtime.h> header
>
> Ingo Molnar (28):
> sched/balancing: Switch the 'DEFINE_SPINLOCK(balancing)' spinlock into an 'atomic_t sched_balance_running' flag
> sched/balancing: Change 'enum cpu_idle_type' to have more natural definitions
> sched/debug: Increase SCHEDSTAT_VERSION to 16
> sched/debug: Allow CONFIG_SCHEDSTATS even on !KERNEL_DEBUG kernels
> sched/balancing: Change comment formatting to not overlap Git conflict marker lines
> sched/balancing: Fix comments (trying to) refer to NOHZ_BALANCE_KICK
> sched/balancing: Update run_rebalance_domains() comments
> sched/balancing: Vertically align the comments of 'struct sg_lb_stats' and 'struct sd_lb_stats'
> sched/balancing: Update comments in 'struct sg_lb_stats' and 'struct sd_lb_stats'
> sched/balancing: Rename run_rebalance_domains() => sched_balance_softirq()
> sched/balancing: Rename scheduler_tick() => sched_tick()
> sched/balancing: Rename trigger_load_balance() => sched_balance_trigger()
> sched/balancing: Rename rebalance_domains() => sched_balance_domains()
> sched/balancing: Rename load_balance() => sched_balance_rq()
> sched/balancing: Rename find_busiest_queue() => sched_balance_find_src_rq()
> sched/balancing: Rename find_busiest_group() => sched_balance_find_src_group()
> sched/balancing: Rename update_blocked_averages() => sched_balance_update_blocked_averages()
> sched/balancing: Rename newidle_balance() => sched_balance_newidle()
> sched/balancing: Rename find_idlest_group_cpu() => sched_balance_find_dst_group_cpu()
> sched/balancing: Rename find_idlest_group() => sched_balance_find_dst_group()
> sched/balancing: Rename find_idlest_cpu() => sched_balance_find_dst_cpu()
> sched/balancing: Fix a couple of outdated function names in comments
> sched/fair: Fix typos in comments
> sched/fair: Rename root_domain::overload to ::overloaded
> sched/fair: Rename {set|get}_rd_overload() to {set|get}_rd_overloaded()
> sched/fair: Rename SG_OVERLOAD to SG_OVERLOADED
> sched/fair: Rename set_rd_overutilized_status() to set_rd_overutilized()
> sched/balancing: Simplify the sg_status bitmask and use separate ->overloaded and ->overutilized flags
>
> Qais Yousef (4):
> sched/topology: Export asym_cap_list
> sched/fair: Check if a task has a fitting CPU when updating misfit
> sched/topology: Remove root_domain::max_cpu_capacity
> sched/fair: Don't double balance_interval for migrate_misfit
>
> Shrikanth Hegde (7):
> sched/balancing: Remove reliance on 'enum cpu_idle_type' ordering when iterating [CPU_MAX_IDLE_TYPES] arrays in show_schedstat()
> sched/fair: Add EAS checks before updating root_domain::overutilized
> sched/fair: Introduce is_rd_overutilized() helper function to access root_domain::overutilized
> sched/fair: Simplify the continue_balancing logic in sched_balance_newidle()
> sched/fair: Combine EAS check with root_domain::overutilized access
> sched/fair: Check root_domain::overload value before update
> sched/fair: Use helper functions to access root_domain::overload
>
> Vincent Guittot (6):
> sched/fair: Fix update of rd->sg_overutilized
> cpufreq: Add a cpufreq pressure feedback for the scheduler
> sched/cpufreq: Take cpufreq feedback into account
> thermal/cpufreq: Remove arch_update_thermal_pressure()
> sched/cpufreq: Rename arch_update_thermal_pressure() => arch_update_hw_pressure()
There is a fix for the one above:
https://lore.kernel.org/lkml/20240425073709.379016-1-vincent.guittot@linaro.org/
> sched/pelt: Remove shift of thermal clock
>
>
> Documentation/admin-guide/kernel-parameters.txt | 1 +
> Documentation/scheduler/sched-domains.rst | 12 +-
> Documentation/scheduler/sched-stats.rst | 37 +-
> .../translations/zh_CN/scheduler/sched-domains.rst | 10 +-
> .../translations/zh_CN/scheduler/sched-stats.rst | 30 +-
> arch/arm/include/asm/topology.h | 6 +-
> arch/arm/kernel/topology.c | 2 +-
> arch/arm64/include/asm/topology.h | 6 +-
> arch/powerpc/include/asm/Kbuild | 1 -
> arch/powerpc/include/asm/cputime.h | 13 -
> arch/powerpc/kernel/time.c | 22 +
> arch/s390/include/asm/vtime.h | 2 -
> arch/s390/kernel/irq.c | 1 +
> arch/s390/kernel/nmi.c | 1 +
> drivers/base/arch_topology.c | 26 +-
> drivers/cpufreq/cpufreq.c | 36 ++
> drivers/cpufreq/qcom-cpufreq-hw.c | 4 +-
> drivers/thermal/cpufreq_cooling.c | 3 -
> include/asm-generic/vtime.h | 1 -
> include/linux/arch_topology.h | 8 +-
> include/linux/cpufreq.h | 10 +
> include/linux/sched.h | 3 +-
> include/linux/sched/idle.h | 2 +-
> include/linux/sched/topology.h | 10 +-
> include/linux/vtime.h | 5 -
> .../events/{thermal_pressure.h => hw_pressure.h} | 14 +-
> include/trace/events/sched.h | 2 +-
> init/Kconfig | 12 +-
> init/init_task.c | 1 +
> kernel/sched/core.c | 14 +-
> kernel/sched/cputime.c | 13 -
> kernel/sched/fair.c | 501 ++++++++++++---------
> kernel/sched/loadavg.c | 2 +-
> kernel/sched/pelt.c | 22 +-
> kernel/sched/pelt.h | 16 +-
> kernel/sched/sched.h | 71 ++-
> kernel/sched/stats.c | 5 +-
> kernel/sched/topology.c | 56 ++-
> kernel/time/timer.c | 2 +-
> kernel/workqueue.c | 2 +-
> lib/Kconfig.debug | 2 +-
> .../ftrace/test.d/ftrace/func_set_ftrace_file.tc | 2 +-
> 42 files changed, 549 insertions(+), 440 deletions(-)
> delete mode 100644 include/asm-generic/vtime.h
> rename include/trace/events/{thermal_pressure.h => hw_pressure.h} (55%)
Powered by blists - more mailing lists