Messages in this thread | | | Date | Mon, 26 Jun 2023 11:45:28 -1000 | From | Tejun Heo <> | Subject | [GIT PULL] workqueue changes for-6.5 |
| |
The following changes since commit ba0ad6ed89fd5dada3b7b65ef2b08e95d449d4ab:
media: nxp: imx8-isi: fix buiding on 32-bit (2023-05-08 09:10:07 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git/ tags/wq-for-6.5
for you to fetch changes up to 18c8ae813156a6855f026de80fffb91e1a28ab3d:
workqueue: Disable per-cpu CPU hog detection when wq_cpu_intensive_thresh_us is 0 (2023-05-25 10:46:53 -1000)
---------------------------------------------------------------- workqueue: Changes for v6.5
* Concurrency-managed per-cpu work items that hog CPUs and delay the execution of other work items are now automatically detected and excluded from concurrency management. Reporting on such work items can also be enabled through a config option.
* Added tools/workqueue/wq_monitor.py which improves visibility into workqueue usages and behaviors.
* Includes Arnd's minimal fix for gcc-13 enum warning on 32bit compiles. This conflicts with afa4bb778e48 ("workqueue: clean up WORK_* constant types, clarify masking") in master. Can be resolved by picking the master version.
---------------------------------------------------------------- Arnd Bergmann (1): workqueue: fix enum type for gcc-13
Paul E. McKenney (1): Further upgrade queue_work_on() comment
Tejun Heo (7): workqueue: Add pwq->stats[] and a monitoring script workqueue: Re-order struct worker fields workqueue: Move worker_set/clr_flags() upwards workqueue: Improve locking rule description for worker fields workqueue: Automatically mark CPU-hogging work items CPU_INTENSIVE workqueue: Report work funcs that trigger automatic CPU_INTENSIVE mechanism workqueue: Track and monitor per-workqueue CPU time usage
Zqiang (2): workqueue: Fix WARN_ON_ONCE() triggers in worker_enter_idle() workqueue: Disable per-cpu CPU hog detection when wq_cpu_intensive_thresh_us is 0
Documentation/admin-guide/kernel-parameters.txt | 12 + Documentation/core-api/workqueue.rst | 32 +++ include/linux/workqueue.h | 2 +- kernel/sched/core.c | 3 + kernel/workqueue.c | 322 +++++++++++++++++++----- kernel/workqueue_internal.h | 24 +- lib/Kconfig.debug | 13 + tools/workqueue/wq_monitor.py | 168 +++++++++++++ 8 files changed, 500 insertions(+), 76 deletions(-) create mode 100644 tools/workqueue/wq_monitor.py
| |