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:59:08 +0000 (11:59 +0200)
commitb737254f71f2979adf25d514a153bbaa269edf0e
tree3af64bff9e23b68b8543690eca263ed69b0140c7
parentea96fc0c35cd8e1430988f4114a105b610993449
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