Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 29 Apr 2024 12:10:41 -1000 | From | Tejun Heo <> | Subject | [GIT PULL] workqueue: Fixes for v6.9-rc6 |
| |
The following changes since commit b1e6ec0a0fd0252af046e542f91234cd6c30b2cb:
Merge tag 'docs-6.9-fixes' of git://git.lwn.net/linux (2024-04-02 12:44:09 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git/ tags/wq-for-6.9-rc6-fixes
for you to fetch changes up to 91f098704c25106d88706fc9f8bcfce01fdb97df:
workqueue: Fix divide error in wq_update_node_max_active() (2024-04-24 07:23:06 -1000)
---------------------------------------------------------------- workqueue: Fixes for v6.9-rc6
Two doc update patches and the following three fixes:
- On single node systems, the default pool is used but the node_nr_active for the default pool was set to min_active. This effectively limited the max concurrency of unbound pools on single node systems to 8 causing performance regressions on some workloads. Fixed by setting the default pool's node_nr_active to max_active.
- wq_update_node_max_active() could trigger divide-by-zero if the intersection between the allowed CPUs for an unbound workqueue and online CPUs becomes empty.
- When kick_pool() was trying to repatriate a worker to a CPU in its pod by setting task->wake_cpu, it didn't consider whether the CPU being selected is online or not which obviously can lead to subobtimal behaviors. On s390, this triggered a crash in arch code. The workqueue patch removes the gross misbehavior but doesn't fix the crash completely as there's a race window in which CPUs can go down after wake_cpu is set. Need to decide whether the fix should be on the core or arch side.
---------------------------------------------------------------- Audra Mitchell (1): Documentation/core-api: Update events_freezable_power references.
Lai Jiangshan (1): workqueue: Fix divide error in wq_update_node_max_active()
Sven Schnelle (1): workqueue: Fix selection of wake_cpu in kick_pool()
Tejun Heo (1): workqueue: The default node_nr_active should have its max set to max_active
Xingyou Chen (1): docs/zh_CN: core-api: Update translation of workqueue.rst to 6.9-rc1
Documentation/core-api/workqueue.rst | 6 +- .../translations/zh_CN/core-api/workqueue.rst | 398 +++++++++++++++++++-- kernel/workqueue.c | 19 +- 3 files changed, 390 insertions(+), 33 deletions(-)
| ![\](/images/icornerr.gif) |