zram: use set_capacity_and_notify
authorChristoph Hellwig <hch@lst.de>
Mon, 16 Nov 2020 14:57:09 +0000 (15:57 +0100)
committerJens Axboe <axboe@kernel.dk>
Mon, 16 Nov 2020 15:34:14 +0000 (08:34 -0700)
Use set_capacity_and_notify to set the size of both the disk and block
device.  This also gets the uevent notifications for the resize for free.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/zram/zram_drv.c

index 1b69720..6d15d51 100644 (file)
@@ -1695,7 +1695,7 @@ static void zram_reset_device(struct zram *zram)
        disksize = zram->disksize;
        zram->disksize = 0;
 
-       set_capacity(zram->disk, 0);
+       set_capacity_and_notify(zram->disk, 0);
        part_stat_set_all(&zram->disk->part0, 0);
 
        up_write(&zram->init_lock);
@@ -1741,9 +1741,7 @@ static ssize_t disksize_store(struct device *dev,
 
        zram->comp = comp;
        zram->disksize = disksize;
-       set_capacity(zram->disk, zram->disksize >> SECTOR_SHIFT);
-
-       revalidate_disk_size(zram->disk, true);
+       set_capacity_and_notify(zram->disk, zram->disksize >> SECTOR_SHIFT);
        up_write(&zram->init_lock);
 
        return len;
@@ -1790,7 +1788,6 @@ static ssize_t reset_store(struct device *dev,
        /* Make sure all the pending I/O are finished */
        fsync_bdev(bdev);
        zram_reset_device(zram);
-       revalidate_disk_size(zram->disk, true);
        bdput(bdev);
 
        mutex_lock(&bdev->bd_mutex);