On Thu 24-03-22 08:51:09, Christoph Hellwig wrote: > Remove the bdev variable and just use the gendisk pointed to by the > zram_device directly. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > drivers/block/zram/zram_drv.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c > index fd83fad59beb1..863606f1722b1 100644 > --- a/drivers/block/zram/zram_drv.c > +++ b/drivers/block/zram/zram_drv.c > @@ -1987,19 +1987,18 @@ static int zram_add(void) > > static int zram_remove(struct zram *zram) > { > - struct block_device *bdev = zram->disk->part0; > bool claimed; > > - mutex_lock(&bdev->bd_disk->open_mutex); > - if (bdev->bd_openers) { > - mutex_unlock(&bdev->bd_disk->open_mutex); > + mutex_lock(&zram->disk->open_mutex); > + if (zram->disk->part0->bd_openers) { > + mutex_unlock(&zram->disk->open_mutex); > return -EBUSY; > } > > claimed = zram->claim; > if (!claimed) > zram->claim = true; > - mutex_unlock(&bdev->bd_disk->open_mutex); > + mutex_unlock(&zram->disk->open_mutex); > > zram_debugfs_unregister(zram); > > @@ -2011,7 +2010,7 @@ static int zram_remove(struct zram *zram) > ; > } else { > /* Make sure all the pending I/O are finished */ > - sync_blockdev(bdev); > + sync_blockdev(zram->disk->part0); > zram_reset_device(zram); > } > > -- > 2.30.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR