zram: cleanup zram_remove

Remove the bdev variable and just use the gendisk pointed to by the
zram_device directly.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20220330052917.2566582-4-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
Christoph Hellwig 2022-03-30 07:29:05 +02:00 committed by Jens Axboe
parent d666e20e2e
commit 7a86d6dc14
1 changed files with 5 additions and 6 deletions

View File

@ -1986,19 +1986,18 @@ out_free_dev:
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);
@ -2010,7 +2009,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);
}