Commit 86a9ce21 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Jens Axboe
Browse files

block: don't return 1 for the fallback case in blkdev_get_zone_info



blkdev_do_report_zones returns the number of reported zones, but
blkdev_get_zone_info returns 0 or an errno.  Translate to the expected
return value in blkdev_report_zone_fallback.

Fixes: b037d41762fd ("block: introduce blkdev_get_zone_info()")
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarDamien Le Moal <dlemoal@kernel.org>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent bc840b21
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -895,8 +895,14 @@ static int blkdev_report_zone_fallback(struct block_device *bdev,
		.data = zone,
		.report_active = true,
	};
	int error;

	return blkdev_do_report_zones(bdev, sector, 1, &args);
	error = blkdev_do_report_zones(bdev, sector, 1, &args);
	if (error < 0)
		return error;
	if (error == 0)
		return -EIO;
	return 0;
}

/*