On Tue, Feb 21, 2023 at 02:04:49AM +0800, wenyang.linux@xxxxxxxxxxx wrote: > From: Zhang Wensheng <zhangwensheng5@xxxxxxxxxx> > > commit 858f1bf65d3d9c00b5e2d8ca87dc79ed88267c98 upstream. > > When 'index' is a big numbers, it may become negative which forced > to 'int'. then 'index << part_shift' might overflow to a positive > value that is not greater than '0xfffff', then sysfs might complains > about duplicate creation. Because of this, move the 'index' judgment > to the front will fix it and be better. > > Fixes: b0d9111a2d53 ("nbd: use an idr to keep track of nbd devices") > Fixes: 940c264984fd ("nbd: fix possible overflow for 'first_minor' in nbd_dev_add()") > Signed-off-by: Zhang Wensheng <zhangwensheng5@xxxxxxxxxx> > Signed-off-by: Yu Kuai <yukuai3@xxxxxxxxxx> > Reviewed-by: Josef Bacik <josef@xxxxxxxxxxxxxx> > Link: https://lore.kernel.org/r/20220521073749.3146892-6-yukuai3@xxxxxxxxxx > Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx # v5.10+ > Signed-off-by: Wen Yang <wenyang.linux@xxxxxxxxxxx> > --- > drivers/block/nbd.c | 23 ++++++++++++----------- > 1 file changed, 12 insertions(+), 11 deletions(-) This is also needed in 5.15.y, please be more careful, you do not want to have a regression when moving to a newer kernel version. I've queued it up there as well. thanks, greg k-h