[GIT PULL] workqueue changes for v5.15-rc1

From: Tejun Heo
Date: Tue Aug 31 2021 - 12:51:02 EST


Hello, Linus.

There is a long-standing subtle destroy_workqueue() bug where a workqueue
can be destroyed while internal work items used for flushing are still in
flight. Lai fixed it by assigning a flush color to the internal work items
so that they are correctly waited for during destruction.

Other than that, all are minor cleanups.

Thanks.

The following changes since commit 7e96bf476270aecea66740a083e51b38c1371cd2:

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm (2021-07-29 09:42:09 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git for-5.15

for you to fetch changes up to bdb0a6548d2233dada752109a71bcf4c9b8ae6d6:

workqueue: Remove unused WORK_NO_COLOR (2021-08-17 07:49:10 -1000)

----------------------------------------------------------------
Cai Huoqing (1):
workqueue: Fix typo in comments

Lai Jiangshan (6):
workqueue: Rename "delayed" (delayed by active management) to "inactive"
workqueue: Change arguement of pwq_dec_nr_in_flight()
workqueue: Change the code of calculating work_flags in insert_wq_barrier()
workqueue: Mark barrier work with WORK_STRUCT_INACTIVE
workqueue: Assign a color to barrier work items
workqueue: Remove unused WORK_NO_COLOR

Sebastian Andrzej Siewior (1):
workqueue: Replace deprecated CPU-hotplug functions.

Zhen Lei (2):
workqueue: Fix possible memory leaks in wq_numa_init()
workqueue: Replace deprecated ida_simple_*() with ida_alloc()/ida_free()

include/linux/workqueue.h | 15 ++--
kernel/workqueue.c | 186 ++++++++++++++++++++++++++------------------
kernel/workqueue_internal.h | 3 +-
3 files changed, 116 insertions(+), 88 deletions(-)

--
tejun