Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

workqueue: Skip __WQ_DESTROYING workqueues when updating global unbound cpumask

Skip updating workqueues with __WQ_DESTROYING bit set when updating
global unbound cpumask to avoid unnecessary work and other complications.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>

authored by

Waiman Long and committed by
Tejun Heo
8eb17dc1 96068b60

+1 -1
+1 -1
kernel/workqueue.c
··· 6501 6501 lockdep_assert_held(&wq_pool_mutex); 6502 6502 6503 6503 list_for_each_entry(wq, &workqueues, list) { 6504 - if (!(wq->flags & WQ_UNBOUND)) 6504 + if (!(wq->flags & WQ_UNBOUND) || (wq->flags & __WQ_DESTROYING)) 6505 6505 continue; 6506 6506 6507 6507 /* creating multiple pwqs breaks ordering guarantee */