dm: remove flush_scheduled_work() during local_exit()
[ Upstream commit 0b22ff5360f5c4e11050b89206370fdf7dc0a226 ] Commitacfe0ad74d
("dm: allocate a special workqueue for deferred device removal") switched from using system workqueue to a single workqueue local to DM. But it didn't eliminate the call to flush_scheduled_work() that was introduced purely for the benefit of deferred device removal with commit2c140a246d
("dm: allow remove to be deferred"). Since DM core uses its own workqueue (and queue_work) there is no need to call flush_scheduled_work() from local_exit(). local_exit()'s destroy_workqueue(deferred_remove_workqueue) handles flushing work started with queue_work(). Fixes:acfe0ad74d
("dm: allocate a special workqueue for deferred device removal") Signed-off-by: Mike Snitzer <snitzer@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
e6d9a876d9
commit
b89d2ed564
@ -263,7 +263,6 @@ out_uevent_exit:
|
|||||||
|
|
||||||
static void local_exit(void)
|
static void local_exit(void)
|
||||||
{
|
{
|
||||||
flush_scheduled_work();
|
|
||||||
destroy_workqueue(deferred_remove_workqueue);
|
destroy_workqueue(deferred_remove_workqueue);
|
||||||
|
|
||||||
unregister_blkdev(_major, _name);
|
unregister_blkdev(_major, _name);
|
||||||
|
Loading…
Reference in New Issue
Block a user