Blob Blame History Raw
From 69beb62ff0d1723a750eebe1c4d01da573d7cd19 Mon Sep 17 00:00:00 2001
From: Ye Bin <yebin10@huawei.com>
Date: Tue, 2 Nov 2021 09:52:36 +0800
Subject: [PATCH] nbd: Fix incorrect error handle when first_minor is illegal
 in nbd_dev_add
Git-commit: 69beb62ff0d1723a750eebe1c4d01da573d7cd19
Patch-mainline: v5.16-rc1
References: git-fixes

If first_minor is illegal will goto out_free_idr label, this will miss
cleanup disk.

Fixes: b1a811633f73 ("block: nbd: add sanity check for first_minor")
Signed-off-by: Ye Bin <yebin10@huawei.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Link: https://lore.kernel.org/r/20211102015237.2309763-4-yebin10@huawei.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Coly Li <colyli@suse.de>

---
 drivers/block/nbd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index a5e3ee28006f..f201c40d1dc9 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -1814,7 +1814,7 @@ static struct nbd_device *nbd_dev_add(int index, unsigned int refs)
 	disk->first_minor = index << part_shift;
 	if (disk->first_minor < index || disk->first_minor > MINORMASK) {
 		err = -EINVAL;
-		goto out_free_idr;
+		goto out_err_disk;
 	}
 
 	disk->minors = 1 << part_shift;
-- 
2.35.3