summaryrefslogtreecommitdiffstats
path: root/fs/block_dev.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2019-11-14 15:34:33 +0100
committerJens Axboe <axboe@kernel.dk>2019-11-14 15:42:41 +0100
commit6917d0689993f46d97d40dd66c601d0fd5b1dbdd (patch)
tree176dd2f6fa009a8ab3bd5181afc2f3ed71888e21 /fs/block_dev.c
parentblock: refactor rescan_partitions (diff)
downloadlinux-6917d0689993f46d97d40dd66c601d0fd5b1dbdd.tar.xz
linux-6917d0689993f46d97d40dd66c601d0fd5b1dbdd.zip
block: merge invalidate_partitions into rescan_partitions
A lot of the logic in invalidate_partitions and rescan_partitions is shared. Merge the two functions to simplify things. There is a small behavior change in that we now send the kevent change notice also if we were not invalidating but no partitions were found, which seems like the right thing to do. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'fs/block_dev.c')
-rw-r--r--fs/block_dev.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/block_dev.c b/fs/block_dev.c
index d612468ee66b..0af62b76d031 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
@@ -1511,10 +1511,7 @@ static void __blkdev_put(struct block_device *bdev, fmode_t mode, int for_part);
static void bdev_disk_changed(struct block_device *bdev, bool invalidate)
{
if (disk_part_scan_enabled(bdev->bd_disk)) {
- if (invalidate)
- invalidate_partitions(bdev->bd_disk, bdev);
- else
- rescan_partitions(bdev->bd_disk, bdev);
+ rescan_partitions(bdev->bd_disk, bdev, invalidate);
} else {
check_disk_size_change(bdev->bd_disk, bdev, !invalidate);
bdev->bd_invalidated = 0;