public inbox for linux-kernel@vger.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 <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Juri Lelli <juri.lelli@redhat.com>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Dietmar Eggemann <dietmar.eggemann@arm.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
	Valentin Schneider <vschneid@redhat.com>,
	Shrikanth Hegde <sshegde@linux.ibm.com>,
	Tejun Heo <tj@kernel.org>
Subject: [GIT PULL] Scheduler changes for v6.13
Date: Mon, 18 Nov 2024 18:55:46 +0100	[thread overview]
Message-ID: <Zzt_or2E2KEypfbi@gmail.com> (raw)


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-11-18

   # HEAD: 771d271b2b908cf660d6789bb4355ed553250edc sched, x86: Update the comment for TIF_NEED_RESCHED_LAZY.

Scheduler changes for v6.13:

 - Core facilities:

    - Add the "Lazy preemption" model (CONFIG_PREEMPT_LAZY=y), which optimizes
      fair-class preemption by delaying preemption requests to the
      tick boundary, while working as full preemption for RR/FIFO/DEADLINE
      classes. (Peter Zijlstra)

        - x86:   Enable Lazy preemption (Peter Zijlstra)
        - riscv: Enable Lazy preemption (Jisheng Zhang)

    - Initialize idle tasks only once (Thomas Gleixner)

    - sched/ext: Remove sched_fork() hack (Thomas Gleixner)

 - Fair scheduler:
    - Optimize the PLACE_LAG when se->vlag is zero (Huang Shijie)

 - Idle loop:
      Optimize the generic idle loop by removing unnecessary
      memory barrier (Zhongqiu Han)

 - RSEQ:
    - Improve cache locality of RSEQ concurrency IDs for
      intermittent workloads (Mathieu Desnoyers)

 - Waitqueues:
    - Make wake_up_{bit,var} less fragile (Neil Brown)

 - PSI:
    - Pass enqueue/dequeue flags to psi callbacks directly (Johannes Weiner)

 - Preparatory patches for proxy execution:
    - core: Add move_queued_task_locked helper (Connor O'Brien)
    - core: Consolidate pick_*_task to task_is_pushable helper (Connor O'Brien)
    - core: Split out __schedule() deactivate task logic into a helper (John Stultz)
    - core: Split scheduler and execution contexts (Peter Zijlstra)
    - locking/mutex: Make mutex::wait_lock irq safe (Juri Lelli)
    - locking/mutex: Expose __mutex_owner() (Juri Lelli)
    - locking/mutex: Remove wakeups from under mutex::wait_lock (Peter Zijlstra)

 - Misc fixes and cleanups:
    - core: Remove unused __HAVE_THREAD_FUNCTIONS hook support (David Disseldorp)
    - core: Update the comment for TIF_NEED_RESCHED_LAZY (Sebastian Andrzej Siewior)
    - wait: Remove unused bit_wait_io_timeout (Dr. David Alan Gilbert)
    - fair: remove the DOUBLE_TICK feature (Huang Shijie)
    - fair: fix the comment for PREEMPT_SHORT (Huang Shijie)
    - uclamp: Fix unnused variable warning (Christian Loehle)
    - rt: No PREEMPT_RT=y for all{yes,mod}config

 Thanks,

	Ingo

------------------>
Christian Loehle (1):
      sched/uclamp: Fix unnused variable warning

Connor O'Brien (2):
      sched: Add move_queued_task_locked helper
      sched: Consolidate pick_*_task to task_is_pushable helper

David Disseldorp (1):
      sched: remove unused __HAVE_THREAD_FUNCTIONS hook support

Dr. David Alan Gilbert (1):
      sched/wait: Remove unused bit_wait_io_timeout

Huang Shijie (3):
      sched/fair: remove the DOUBLE_TICK feature
      sched/fair: optimize the PLACE_LAG when se->vlag is zero
      sched/fair: fix the comment for PREEMPT_SHORT

Ingo Molnar (1):
      fs/bcachefs: Fix __wait_on_freeing_inode() definition of waitqueue entry

Jisheng Zhang (1):
      riscv: add PREEMPT_LAZY support

Johannes Weiner (1):
      sched: psi: pass enqueue/dequeue flags to psi callbacks directly

John Stultz (1):
      sched: Split out __schedule() deactivate task logic into a helper

Juri Lelli (2):
      locking/mutex: Make mutex::wait_lock irq safe
      locking/mutex: Expose __mutex_owner()

Mathieu Desnoyers (1):
      sched: Improve cache locality of RSEQ concurrency IDs for intermittent workloads

NeilBrown (7):
      sched: change wake_up_bit() and related function to expect unsigned long *
      sched: Improve documentation for wake_up_bit/wait_on_bit family of functions
      sched: Document wait_var_event() family of functions and wake_up_var()
      sched: Add test_and_clear_wake_up_bit() and atomic_dec_and_wake_up()
      sched: Add wait/wake interface for variable updated under a lock.
      sched: add wait_var_event_io()
      softirq: use bit waits instead of var waits.

Peter Zijlstra (7):
      locking/mutex: Remove wakeups from under mutex::wait_lock
      sched: Split scheduler and execution contexts
      sched: Add TIF_NEED_RESCHED_LAZY infrastructure
      sched: Add Lazy preemption model
      sched: Enable PREEMPT_DYNAMIC for PREEMPT_RT
      sched, x86: Enable Lazy preemption
      sched: No PREEMPT_RT=y for all{yes,mod}config

Sebastian Andrzej Siewior (1):
      sched, x86: Update the comment for TIF_NEED_RESCHED_LAZY.

Thomas Gleixner (2):
      sched: Initialize idle tasks only once
      sched/ext: Remove sched_fork() hack

Zhongqiu Han (1):
      sched: idle: Optimize the generic idle loop by removing needless memory barrier


 arch/riscv/Kconfig                   |   1 +
 arch/riscv/include/asm/thread_info.h |  10 +-
 arch/x86/Kconfig                     |   1 +
 arch/x86/include/asm/thread_info.h   |   6 +-
 fs/exec.c                            |   2 +-
 include/linux/entry-common.h         |   3 +-
 include/linux/entry-kvm.h            |   5 +-
 include/linux/mm_types.h             |  72 +++++-
 include/linux/preempt.h              |   8 +-
 include/linux/sched.h                |   5 +-
 include/linux/sched/ext.h            |   1 -
 include/linux/sched/task_stack.h     |   2 +-
 include/linux/thread_info.h          |  21 +-
 include/linux/wait_bit.h             | 444 ++++++++++++++++++++++++++++-------
 kernel/Kconfig.preempt               |  27 ++-
 kernel/entry/common.c                |   2 +-
 kernel/entry/kvm.c                   |   4 +-
 kernel/fork.c                        |   2 +-
 kernel/futex/pi.c                    |   6 +-
 kernel/locking/mutex.c               |  59 ++---
 kernel/locking/mutex.h               |  27 +++
 kernel/locking/rtmutex.c             |  51 ++--
 kernel/locking/rtmutex_api.c         |  12 +-
 kernel/locking/rtmutex_common.h      |   3 +-
 kernel/locking/rwbase_rt.c           |   8 +-
 kernel/locking/rwsem.c               |   4 +-
 kernel/locking/spinlock_rt.c         |   5 +-
 kernel/locking/ww_mutex.h            |  51 ++--
 kernel/sched/core.c                  | 289 +++++++++++++++--------
 kernel/sched/deadline.c              |  57 ++---
 kernel/sched/debug.c                 |   7 +-
 kernel/sched/ext.c                   |   7 +-
 kernel/sched/fair.c                  |  42 ++--
 kernel/sched/features.h              |   3 +-
 kernel/sched/idle.c                  |   1 -
 kernel/sched/pelt.c                  |   2 +-
 kernel/sched/rt.c                    |  67 +++---
 kernel/sched/sched.h                 | 155 ++++++++----
 kernel/sched/stats.h                 |  29 ++-
 kernel/sched/syscalls.c              |   4 +-
 kernel/sched/wait_bit.c              |  90 ++++---
 kernel/softirq.c                     |  14 +-
 42 files changed, 1105 insertions(+), 504 deletions(-)

             reply	other threads:[~2024-11-18 17:55 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-18 17:55 Ingo Molnar [this message]
2024-11-19 23:33 ` [GIT PULL] Scheduler changes for v6.13 pr-tracker-bot

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=Zzt_or2E2KEypfbi@gmail.com \
    --to=mingo@kernel.org \
    --cc=bsegall@google.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=juri.lelli@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=sshegde@linux.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=vincent.guittot@linaro.org \
    --cc=vschneid@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox