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 <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 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.