From: Mikulas Patocka Date: Thu, 25 Apr 2019 16:07:54 +0000 (-0400) Subject: dm delay: fix a crash when invalid device is specified X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=81bc6d150ace6250503b825d9d0c10f7bbd24095;p=linux.git dm delay: fix a crash when invalid device is specified When the target line contains an invalid device, delay_ctr() will call delay_dtr() with NULL workqueue. Attempting to destroy the NULL workqueue causes a crash. Signed-off-by: Mikulas Patocka Cc: stable@vger.kernel.org Signed-off-by: Mike Snitzer --- diff --git a/drivers/md/dm-delay.c b/drivers/md/dm-delay.c index fddffe251bf6b..f496213f8b675 100644 --- a/drivers/md/dm-delay.c +++ b/drivers/md/dm-delay.c @@ -121,7 +121,8 @@ static void delay_dtr(struct dm_target *ti) { struct delay_c *dc = ti->private; - destroy_workqueue(dc->kdelayd_wq); + if (dc->kdelayd_wq) + destroy_workqueue(dc->kdelayd_wq); if (dc->read.dev) dm_put_device(ti, dc->read.dev);