[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Zztf9nRuKNjH34Bd@slm.duckdns.org>
Date: Mon, 18 Nov 2024 05:40:38 -1000
From: Tejun Heo <tj@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Lai Jiangshan <jiangshanlai@...il.com>
Subject: [GIT PULL] workqueue: Changes for v6.13
The following changes since commit 9852d85ec9d492ebef56dc5f229416c925758edc:
Linux 6.12-rc1 (2024-09-29 15:06:19 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git/ tags/wq-for-6.13
for you to fetch changes up to 85f0d8e39affb7b88401b1e0542230a7af985b96:
workqueue: Reduce expensive locks for unbound workqueue (2024-11-15 06:43:39 -1000)
----------------------------------------------------------------
workqueue: Changes for v6.13
- Maximum concurrency limit of 512 which was set a long time ago is too low
now. A legitimate use (BPF cgroup release) of system_wq could saturate it
under stress test conditions leading to false dependencies and deadlocks.
While the offending use was switched to a dedicated workqueue, use the
opportunity to bump WQ_MAX_ACTIVE four fold and document that system
workqueue shouldn't be saturated. Workqueue should add at least a warning
mechanism for cases where system workqueues are saturated.
- Recent workqueue updates to support more flexible execution topology made
unbound workqueues use per-cpu worker pool frontends which pushed up
workqueue flush overhead. As consecutive CPUs are likely to be pointing to
the same worker pool, reduce overhead by switching locks only when
necessary.
----------------------------------------------------------------
Chen Ridong (2):
workqueue: doc: Add a note saturating the system_wq is not permitted
workqueue: Adjust WQ_MAX_ACTIVE from 512 to 2048
Wangyang Guo (1):
workqueue: Reduce expensive locks for unbound workqueue
Documentation/core-api/workqueue.rst | 9 +++++++--
include/linux/workqueue.h | 2 +-
kernel/workqueue.c | 22 ++++++++++++++++++----
3 files changed, 26 insertions(+), 7 deletions(-)
--
tejun
Powered by blists - more mailing lists