diff options
author | Christoph Hellwig <hch@lst.de> | 2020-09-01 17:57:44 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-09-02 08:00:07 -0600 |
commit | b8086d3f5a0e88b1912d55a158b8a6a43ad6604b (patch) | |
tree | 4fbd9e3b72eb27a2d0da06e57a57cfb9290e72b3 | |
parent | 659e56ba864d37b7ee0a49cd432205b2a5ca815e (diff) | |
download | linux-stable-b8086d3f5a0e88b1912d55a158b8a6a43ad6604b.tar.gz linux-stable-b8086d3f5a0e88b1912d55a158b8a6a43ad6604b.tar.bz2 linux-stable-b8086d3f5a0e88b1912d55a158b8a6a43ad6604b.zip |
block: use revalidate_disk_size in set_capacity_revalidate_and_notify
Only virtio_blk and xen-blkfront set the revalidate argument to true,
and both do not implement the ->revalidate_disk method. So switch
to the helper that just updates the size instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r-- | block/genhd.c | 7 | ||||
-rw-r--r-- | include/linux/genhd.h | 4 |
2 files changed, 5 insertions, 6 deletions
diff --git a/block/genhd.c b/block/genhd.c index a36be970b767..081f1039d936 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -50,14 +50,13 @@ static void disk_release_events(struct gendisk *disk); * zero and will not be set to zero */ void set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size, - bool revalidate) + bool update_bdev) { sector_t capacity = get_capacity(disk); set_capacity(disk, size); - - if (revalidate) - revalidate_disk(disk); + if (update_bdev) + revalidate_disk_size(disk, true); if (capacity != size && capacity != 0 && size != 0) { char *envp[] = { "RESIZE=1", NULL }; diff --git a/include/linux/genhd.h b/include/linux/genhd.h index f76c8baf6b7d..02a73198b289 100644 --- a/include/linux/genhd.h +++ b/include/linux/genhd.h @@ -313,8 +313,8 @@ static inline int get_disk_ro(struct gendisk *disk) extern void disk_block_events(struct gendisk *disk); extern void disk_unblock_events(struct gendisk *disk); extern void disk_flush_events(struct gendisk *disk, unsigned int mask); -extern void set_capacity_revalidate_and_notify(struct gendisk *disk, - sector_t size, bool revalidate); +void set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size, + bool update_bdev); extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask); /* drivers/char/random.c */ |