summaryrefslogtreecommitdiff
path: root/block/blk-zoned.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2025-11-06 15:53:32 +0100
committerJens Axboe <axboe@kernel.dk>2025-11-07 04:38:28 -0700
commit86a9ce21f5b781c56eba23cbbd2264ab74778ab0 (patch)
tree0197247be9e2da03f84dbd709b74cdd7fa39b0ae /block/blk-zoned.c
parentbc840b21a25a50f00e2b240329c09281506df387 (diff)
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 <hch@lst.de> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-zoned.c')
-rw-r--r--block/blk-zoned.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/block/blk-zoned.c b/block/blk-zoned.c
index c5226bcaaa94..8204214e3b89 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;
}
/*