lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <Z4_zEpvX45l7BtZc@slm.duckdns.org>
Date: Tue, 21 Jan 2025 09:18:42 -1000
From: Tejun Heo <tj@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, David Vernet <void@...ifault.com>,
	Andrea Righi <arighi@...dia.com>,
	Changwoo Min <changwoo@...lia.com>
Subject: [GIT PULL] sched_ext: Changes for v6.14

The following changes since commit f24d192985cbd6782850fdbb3839039da2f0ee76:

  sched_ext: fix application of sizeof to pointer (2024-12-04 09:47:39 -1000)

are available in the Git repository at:

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

for you to fetch changes up to 987ce79b5242c048acae3a0c1feaae0a353d5cde:

  sched_ext: fix kernel-doc warnings (2025-01-13 08:23:29 -1000)

----------------------------------------------------------------
sched_ext: Changes for v6.14

- scx_bpf_now() added so that BPF scheduler can access the cached timestamp
  in struct rq to avoid reading TSC multiple times within a locked
  scheduling operation.

- Minor updates to the built-in idle CPU selection logic.

- tool/sched_ext updates and other misc changes.

Pulling sched_ext/for-6.14 into master causes a merge conflict between the
following two commits (first commit in master, second in for-6.14):

  a2a3374c47c4 sched_ext: idle: Refresh idle masks during idle-to-idle transitions
  9cf9aceed21e sched_ext: idle: use assign_cpu() to update the idle cpumask

  static void update_builtin_idle(int cpu, bool idle)
  {
  <<<<<<< HEAD
          if (idle)
                  cpumask_set_cpu(cpu, idle_masks.cpu);
          else
                  cpumask_clear_cpu(cpu, idle_masks.cpu);
  =======
          int cpu = cpu_of(rq);

          if (SCX_HAS_OP(update_idle) && !scx_rq_bypassing(rq)) {
                  SCX_CALL_OP(SCX_KF_REST, update_idle, cpu_of(rq), idle);
                  if (!static_branch_unlikely(&scx_builtin_idle_enabled))
                          return;
          }

          assign_cpu(cpu, idle_masks.cpu, idle);
  >>>>>>> 987ce79b5242c048acae3a0c1feaae0a353d5cde

The first commit factored out update_builtin_idle() and the second replaced
cpumask_set/clear_cpu() calls with assign_cpu(). The conflict can be
resolved by taking the code from the first and then replacing the
cpumask_set/clear_cpu() calls with assign_cpu():

  static void update_builtin_idle(int cpu, bool idle)
  {
          assign_cpu(cpu, idle_masks.cpu, idle);

----------------------------------------------------------------
Andrea Righi (7):
      sched_ext: Use the NUMA scheduling domain for NUMA optimizations
      sched_ext: idle: use assign_cpu() to update the idle cpumask
      sched_ext: idle: clarify comments
      sched_ext: idle: introduce check_builtin_idle_enabled() helper
      sched_ext: idle: small CPU iteration refactoring
      sched_ext: update scx_bpf_dsq_insert() doc for SCX_DSQ_LOCAL_ON
      sched_ext: Include remaining task time slice in error state dump

Changwoo Min (6):
      sched_ext: Relocate scx_enabled() related code
      sched_ext: Implement scx_bpf_now()
      sched_ext: Add scx_bpf_now() for BPF scheduler
      sched_ext: Add time helpers for BPF schedulers
      sched_ext: Replace bpf_ktime_get_ns() to scx_bpf_now()
      sched_ext: Use time helpers in BPF schedulers

Liang Jie (1):
      sched_ext: Use sizeof_field for key_len in dsq_hash_params

Randy Dunlap (1):
      sched_ext: fix kernel-doc warnings

Shizhao Chen (1):
      sched_ext: Add option -l in selftest runner to list all available tests

Tejun Heo (1):
      tools/sched_ext: Receive updates from SCX repo

Thorsten Blum (1):
      sched_ext: Use str_enabled_disabled() helper in update_selcpu_topology()

 Documentation/scheduler/sched-ext.rst           |   6 +-
 kernel/sched/core.c                             |   6 +-
 kernel/sched/ext.c                              | 335 ++++++++++++++++--------
 kernel/sched/sched.h                            |  51 ++--
 tools/sched_ext/include/scx/common.bpf.h        | 178 ++++++++++++-
 tools/sched_ext/include/scx/common.h            |   6 +
 tools/sched_ext/include/scx/compat.bpf.h        |   5 +
 tools/sched_ext/include/scx/compat.h            |   1 +
 tools/sched_ext/include/scx/enums.autogen.bpf.h | 105 ++++++++
 tools/sched_ext/include/scx/enums.autogen.h     |  41 +++
 tools/sched_ext/include/scx/enums.bpf.h         |  12 +
 tools/sched_ext/include/scx/enums.h             |  27 ++
 tools/sched_ext/include/scx/user_exit_info.h    |   9 +-
 tools/sched_ext/scx_central.bpf.c               |  13 +-
 tools/sched_ext/scx_central.c                   |   1 +
 tools/sched_ext/scx_flatcg.bpf.c                |  25 +-
 tools/sched_ext/scx_flatcg.c                    |   1 +
 tools/sched_ext/scx_qmap.bpf.c                  |   2 +-
 tools/sched_ext/scx_qmap.c                      |   2 +
 tools/sched_ext/scx_simple.bpf.c                |   9 +-
 tools/testing/selftests/sched_ext/runner.c      |  15 +-
 21 files changed, 690 insertions(+), 160 deletions(-)
 create mode 100644 tools/sched_ext/include/scx/enums.autogen.bpf.h
 create mode 100644 tools/sched_ext/include/scx/enums.autogen.h
 create mode 100644 tools/sched_ext/include/scx/enums.bpf.h
 create mode 100644 tools/sched_ext/include/scx/enums.h

-- 
tejun

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ