diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/md/bcache/super.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c index 60e75130a44c..d4713d098a39 100644 --- a/drivers/md/bcache/super.c +++ b/drivers/md/bcache/super.c | |||
| @@ -1084,12 +1084,8 @@ static void cached_dev_free(struct closure *cl) | |||
| 1084 | 1084 | ||
| 1085 | mutex_unlock(&bch_register_lock); | 1085 | mutex_unlock(&bch_register_lock); |
| 1086 | 1086 | ||
| 1087 | if (!IS_ERR_OR_NULL(dc->bdev)) { | 1087 | if (!IS_ERR_OR_NULL(dc->bdev)) |
| 1088 | if (dc->bdev->bd_disk) | ||
| 1089 | blk_sync_queue(bdev_get_queue(dc->bdev)); | ||
| 1090 | |||
| 1091 | blkdev_put(dc->bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL); | 1088 | blkdev_put(dc->bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL); |
| 1092 | } | ||
| 1093 | 1089 | ||
| 1094 | wake_up(&unregister_wait); | 1090 | wake_up(&unregister_wait); |
| 1095 | 1091 | ||
| @@ -1817,10 +1813,8 @@ void bch_cache_release(struct kobject *kobj) | |||
| 1817 | if (ca->sb_bio.bi_inline_vecs[0].bv_page) | 1813 | if (ca->sb_bio.bi_inline_vecs[0].bv_page) |
| 1818 | put_page(ca->sb_bio.bi_io_vec[0].bv_page); | 1814 | put_page(ca->sb_bio.bi_io_vec[0].bv_page); |
| 1819 | 1815 | ||
| 1820 | if (!IS_ERR_OR_NULL(ca->bdev)) { | 1816 | if (!IS_ERR_OR_NULL(ca->bdev)) |
| 1821 | blk_sync_queue(bdev_get_queue(ca->bdev)); | ||
| 1822 | blkdev_put(ca->bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL); | 1817 | blkdev_put(ca->bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL); |
| 1823 | } | ||
| 1824 | 1818 | ||
| 1825 | kfree(ca); | 1819 | kfree(ca); |
| 1826 | module_put(THIS_MODULE); | 1820 | module_put(THIS_MODULE); |
