diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c index 09573c2bcb5d30bc15c15a32f1fcb5653db3e07f..6ceaec35b8719152d3decdb3e7a0da3bfdcb029e 100644 --- a/drivers/md/bcache/super.c +++ b/drivers/md/bcache/super.c @@ -1071,7 +1071,8 @@ static void cached_dev_free(struct closure *cl) struct cached_dev *dc = container_of(cl, struct cached_dev, disk.cl); cancel_delayed_work_sync(&dc->writeback_rate_update); - kthread_stop(dc->writeback_thread); + if (!IS_ERR_OR_NULL(dc->writeback_thread)) + kthread_stop(dc->writeback_thread); mutex_lock(&bch_register_lock);