diff options
author | Jan Kara <jack@suse.cz> | 2017-02-21 18:09:47 +0100 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2017-02-21 12:51:54 -0700 |
commit | d06e05c026ab58121dc6ab37c11f855ff642531e (patch) | |
tree | 3f42cd9cb8510ff484430a25ba471223d1496252 | |
parent | 4b8c861a7c79806fb9ee564c87f517dc26fc2d1e (diff) |
block: Unhash also block device inode for the whole device
Iteration over partitions in del_gendisk() omits part0. Add
bdev_unhash_inode() call for the whole device. Otherwise if the device
number gets reused, bdev inode will be still associated with the old
(stale) bdi.
Tested-by: Lekshmi Pillai <lekshmicpillai@in.ibm.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jens Axboe <axboe@fb.com>
-rw-r--r-- | block/genhd.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/block/genhd.c b/block/genhd.c index 15b3c18d8337..2f444b87a5f2 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -676,6 +676,7 @@ void del_gendisk(struct gendisk *disk) disk_part_iter_exit(&piter); invalidate_partition(disk, 0); + bdev_unhash_inode(disk_devt(disk)); set_capacity(disk, 0); disk->flags &= ~GENHD_FL_UP; |