From: Zhong Jinghua zhongjinghua@huawei.com
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I81XCK
----------------------------------------
Commits on our branch with check issues on first_minor had serious confusion, resulting in duplicate checks in nbd_dev_add and nbd_genl_connect.
So I revert the messy commit, backport lts patch.
Revert 3a3bbac17214 ("Revert "block: nbd: add sanity check for first_minor"") Revert 3bb2913d0cc5 ("nbd: fix assignment error for first_minor in nbd_dev_add") Revert 648bb72a02a3 ("nbd: fix possible overflow on 'first_minor' in nbd_dev_add()") Revert 60141517d289 ("nbd: Fix use-after-free in blk_mq_free_rqs") Revert 98d3ad1d2589 ("nbd: add sanity check for first_minor")
Signed-off-by: Zhong Jinghua zhongjinghua@huawei.com Signed-off-by: Li Nan linan122@huawei.com --- drivers/block/nbd.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-)
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 79f29bbf9f5d..e267ee3d8666 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -1924,20 +1924,8 @@ static int nbd_genl_connect(struct sk_buff *skb, struct genl_info *info) if (!netlink_capable(skb, CAP_SYS_ADMIN)) return -EPERM;
- if (info->attrs[NBD_ATTR_INDEX]) { + if (info->attrs[NBD_ATTR_INDEX]) index = nla_get_u32(info->attrs[NBD_ATTR_INDEX]); - - /* - * Too big first_minor can cause duplicate creation of - * sysfs files/links, since index << part_shift might - * overflow, or MKDEV() expect that the max bits of - * first_minor is 20. - */ - if (index < 0 || index > MINORMASK >> part_shift) { - printk(KERN_ERR "nbd: illegal input index %d\n", index); - return -EINVAL; - } - } if (!info->attrs[NBD_ATTR_SOCKETS]) { printk(KERN_ERR "nbd: must specify at least one socket\n"); return -EINVAL;