workqueue: Move the position of debug_work_activate() in __queue_work()
authorZqiang <qiang.zhang@windriver.com>
Thu, 18 Feb 2021 03:16:49 +0000 (11:16 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Apr 2021 09:57:50 +0000 (11:57 +0200)
commit9948ff55ed9c792c5ede2b05092ba3e447f91d0f
tree925239b6af950ff97e2f983e1da536e23a2e8f88
parent0834c021f5d14efe9c2e18a1195a4834ac8ae381
workqueue: Move the position of debug_work_activate() in __queue_work()

[ Upstream commit 0687c66b5f666b5ad433f4e94251590d9bc9d10e ]

The debug_work_activate() is called on the premise that
the work can be inserted, because if wq be in WQ_DRAINING
status, insert work may be failed.

Fixes: e41e704bc4f4 ("workqueue: improve destroy_workqueue() debuggability")
Signed-off-by: Zqiang <qiang.zhang@windriver.com>
Reviewed-by: Lai Jiangshan <jiangshanlai@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/workqueue.c