linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, David Vernet <void@manifault.com>,
	Andrea Righi <arighi@nvidia.com>,
	Changwoo Min <changwoo@igalia.com>,
	sched-ext@lists.linux.dev
Subject: [GIT PULL] sched_ext: Changes for v6.18
Date: Fri, 26 Sep 2025 09:40:26 -1000	[thread overview]
Message-ID: <41d26de7756d571845b9feb04a4e8e9d@kernel.org> (raw)

The following changes since commit 55ed11b181c43d81ce03b50209e4e7c4a14ba099:

  sched_ext: idle: Handle migration-disabled tasks in BPF code (2025-09-22 06:24:44 -1000)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext.git tags/sched_ext-for-6.18

for you to fetch changes up to df10932ad740ba1f871b6dd2ddafc7dc8cea944f:

  Revert "sched_ext: Use rhashtable_lookup() instead of rhashtable_lookup_fast()" (2025-09-23 20:38:23 -1000)

----------------------------------------------------------------
sched_ext: Changes for v6.18

- Code organization cleanup. Separate internal types and accessors to
  ext_internal.h to reduce the size of ext.c and improve maintainability.

- Prepare for cgroup sub-scheduler support by adding @sch parameter to
  various functions and helpers, reorganizing scheduler instance handling,
  and dropping obsolete helpers like scx_kf_exit() and kf_cpu_valid().

- Add new scx_bpf_cpu_curr() and scx_bpf_locked_rq() BPF helpers to provide
  safer access patterns with proper RCU protection. scx_bpf_cpu_rq() is
  deprecated with warnings due to potential race conditions.

- Improve debugging with migration-disabled counter in error state dumps,
  SCX_EFLAG_INITIALIZED flag, bitfields for warning flags, and other
  enhancements to help diagnose issues.

- Use cgroup_lock/unlock() for cgroup synchronization instead of
  scx_cgroup_rwsem based synchronization. This is simpler and allows
  enable/disable paths to synchronize against cgroup changes independent of
  the CPU controller.

- rhashtable_lookup() replacement to avoid redundant RCU locking was
  reverted due to RCU usage warnings. Will be redone once rhashtable is
  updated to use rcu_dereference_all().

- Other misc updates and fixes including bypass handling improvements,
  scx_task_iter_relock() improvements, tools/sched_ext updates, and
  compatibility helpers.

----------------------------------------------------------------
Andrea Righi (5):
      tools/sched_ext: Receive updates from SCX repo
      tools/sched_ext: Add compat helper for scx_bpf_cpu_curr()
      sched_ext: Fix NULL dereference in scx_bpf_cpu_rq() warning
      sched_ext: Add migration-disabled counter to error state dump
      sched_ext: Verify RCU protection in scx_bpf_cpu_curr()

Christian Loehle (3):
      sched_ext: Introduce scx_bpf_locked_rq()
      sched_ext: Introduce scx_bpf_cpu_curr()
      sched_ext: deprecation warn for scx_bpf_cpu_rq()

Tejun Heo (21):
      sched_ext: Make explicit scx_task_iter_relock() calls unnecessary
      sched_ext: Keep bypass on between enable failure and scx_disable_workfn()
      sched_ext: Move internal type and accessor definitions to ext_internal.h
      sched_ext: Put event_stats_cpu in struct scx_sched_pcpu
      sched_ext: Use cgroup_lock/unlock() to synchronize against cgroup operations
      sched_ext: Use rhashtable_lookup() instead of rhashtable_lookup_fast()
      sched_ext: Improve SCX_KF_DISPATCH comment
      sched_ext: Fix stray scx_root usage in task_can_run_on_remote_rq()
      sched_ext: Use bitfields for boolean warning flags
      sched_ext: Add SCX_EFLAG_INITIALIZED to indicate successful ops.init()
      sched_ext: Make qmap dump operation non-destructive
      tools/sched_ext: scx_qmap: Make debug output quieter by default
      sched_ext: Separate out scx_kick_cpu() and add @sch to it
      sched_ext: Add the @sch parameter to __bstr_format()
      sched_ext: Add the @sch parameter to ext_idle helpers
      sched_ext: Drop kf_cpu_valid()
      sched_ext: Add the @sch parameter to scx_dsq_insert_preamble/commit()
      sched_ext: Drop scx_kf_exit() and scx_kf_error()
      sched_ext: Misc updates around scx_sched instance pointer
      sched_ext: Merge branch 'for-6.17-fixes' into for-6.18
      Revert "sched_ext: Use rhashtable_lookup() instead of rhashtable_lookup_fast()"

 include/linux/sched/ext.h                          |    6 +-
 kernel/sched/build_policy.c                        |    1 +
 kernel/sched/core.c                                |    2 -
 kernel/sched/ext.c                                 | 1556 ++++----------------
 kernel/sched/ext.h                                 |   25 -
 kernel/sched/ext_idle.c                            |  146 +-
 kernel/sched/ext_internal.h                        | 1078 ++++++++++++++
 tools/sched_ext/include/scx/bpf_arena_common.bpf.h |  175 +++
 tools/sched_ext/include/scx/bpf_arena_common.h     |   33 +
 tools/sched_ext/include/scx/common.bpf.h           |  104 +-
 tools/sched_ext/include/scx/common.h               |    5 +-
 tools/sched_ext/include/scx/compat.bpf.h           |   22 +
 tools/sched_ext/include/scx/user_exit_info.bpf.h   |   40 +
 tools/sched_ext/include/scx/user_exit_info.h       |   49 +-
 .../sched_ext/include/scx/user_exit_info_common.h  |   30 +
 tools/sched_ext/scx_central.bpf.c                  |    2 +-
 tools/sched_ext/scx_central.c                      |    1 +
 tools/sched_ext/scx_flatcg.bpf.c                   |    2 +-
 tools/sched_ext/scx_flatcg.c                       |    2 +
 tools/sched_ext/scx_qmap.bpf.c                     |   98 +-
 tools/sched_ext/scx_qmap.c                         |   12 +-
 tools/sched_ext/scx_simple.c                       |    2 +
 22 files changed, 1992 insertions(+), 1399 deletions(-)
 create mode 100644 kernel/sched/ext_internal.h
 create mode 100644 tools/sched_ext/include/scx/bpf_arena_common.bpf.h
 create mode 100644 tools/sched_ext/include/scx/bpf_arena_common.h
 create mode 100644 tools/sched_ext/include/scx/user_exit_info.bpf.h
 create mode 100644 tools/sched_ext/include/scx/user_exit_info_common.h

             reply	other threads:[~2025-09-26 19:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-26 19:40 Tejun Heo [this message]
2025-09-30 17:35 ` [GIT PULL] sched_ext: Changes for v6.18 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=41d26de7756d571845b9feb04a4e8e9d@kernel.org \
    --to=tj@kernel.org \
    --cc=arighi@nvidia.com \
    --cc=changwoo@igalia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sched-ext@lists.linux.dev \
    --cc=torvalds@linux-foundation.org \
    --cc=void@manifault.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;
as well as URLs for NNTP newsgroup(s).