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 for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZvsCeqjNGgqglWaD@slm.duckdns.org>
Date: Mon, 30 Sep 2024 09:56: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>,
	sched-ext@...a.com
Subject: [GIT PULL] sched_ext: A second set of fixes for v6.12-rc1

The following changes since commit 68e5c7d4cefb66de3953a874e670ec8f1ce86a24:

  Merge tag 'kbuild-v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild (2024-09-24 13:02:06 -0700)

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.12-rc1-fixes-1

for you to fetch changes up to 95b873693a0841e02b812e693296a884362fdd51:

  sched_ext: Remove redundant p->nr_cpus_allowed checker (2024-09-27 10:23:45 -1000)

----------------------------------------------------------------
sched_ext: A second set of fixes for v6.12-rc1

- When sched_ext is in bypass mode (e.g. while disabling the BPF scheduler),
  it was using one DSQ to implement global FIFO scheduling as all it has to
  do is guaranteeing reasonable forward progress. On multi-socket machines,
  this can lead to live-lock conditions under certain workloads. Fixed by
  splitting the queue used for FIFO scheduling per NUMA node. This required
  several preparation patches.

- Hotplug tests on powerpc could reliably trigger deadlock while enabling a
  BPF scheduler. This was caused by cpu_hotplug_lock nesting inside
  scx_fork_rwsem and then CPU hotplug path trying to fork a new thread while
  holding cpu_hotplug_lock. Fixed by restructuring locking in enable and
  disable paths so that the two locks are not coupled. This required several
  preparation patches which also fixed a couple other issues in the enable
  path.

- A build fix for !CONFIG_SMP.

- Userspace tooling sync and updates.

----------------------------------------------------------------
Tejun Heo (16):
      sched_ext: Build fix for !CONFIG_SMP
      sched_ext: Add __COMPAT helpers for features added during v6.12 devel cycle
      tools/sched_ext: Receive misc updates from SCX repo
      scx_flatcg: Use a user DSQ for fallback instead of SCX_DSQ_GLOBAL
      sched_ext: Allow only user DSQs for scx_bpf_consume(), scx_bpf_dsq_nr_queued() and bpf_iter_scx_dsq_new()
      sched_ext: Relocate find_user_dsq()
      sched_ext: Split the global DSQ per NUMA node
      sched_ext: Use shorter slice while bypassing
      sched_ext: Relocate check_hotplug_seq() call in scx_ops_enable()
      sched_ext: Remove SCX_OPS_PREPPING
      sched_ext: Initialize in bypass mode
      sched_ext: Fix SCX_TASK_INIT -> SCX_TASK_READY transitions in scx_ops_enable()
      sched_ext: Enable scx_ops_init_task() separately
      sched_ext: Add scx_cgroup_enabled to gate cgroup operations and fix scx_tg_online()
      sched_ext: Decouple locks in scx_ops_disable_workfn()
      sched_ext: Decouple locks in scx_ops_enable()

Zhang Qiao (1):
      sched_ext: Remove redundant p->nr_cpus_allowed checker

 kernel/sched/ext.c                           | 320 ++++++++++++++-------------
 tools/sched_ext/include/scx/common.bpf.h     |  15 ++
 tools/sched_ext/include/scx/compat.bpf.h     |  19 ++
 tools/sched_ext/include/scx/user_exit_info.h |   4 +
 tools/sched_ext/scx_flatcg.bpf.c             |  32 ++-
 tools/sched_ext/scx_qmap.bpf.c               |  12 +-
 6 files changed, 236 insertions(+), 166 deletions(-)

-- 
tejun

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ