From 86a9ce21f5b781c56eba23cbbd2264ab74778ab0 Mon Sep 17 00:00:00 2001 From: Christoph Hellwig Date: Thu, 6 Nov 2025 15:53:32 +0100 Subject: [PATCH] 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: Christoph Hellwig Reviewed-by: Damien Le Moal Signed-off-by: Jens Axboe --- block/blk-zoned.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/block/blk-zoned.c b/block/blk-zoned.c index c5226bcaaa940..8204214e3b898 100644 --- a/block/blk-zoned.c +++ b/block/blk-zoned.c @@ -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; } /* -- 2.47.3