On Tue, Oct 26, 2021 at 07:25:26PM +0800, Wang Hai wrote: > Return error code if usb_maxpacket() returns 0 in usbnet_probe(). > > Fixes: 397430b50a36 ("usbnet: sanity check for maxpacket") > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > Signed-off-by: Wang Hai <wanghai38@xxxxxxxxxx> > --- Good catch. This is embarrassing. I double checked the error path but failed to notice the missing return value. > drivers/net/usb/usbnet.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c > index 80432ee0ce69..fb5bf7d36d50 100644 > --- a/drivers/net/usb/usbnet.c > +++ b/drivers/net/usb/usbnet.c > @@ -1790,6 +1790,7 @@ usbnet_probe (struct usb_interface *udev, const struct usb_device_id *prod) > dev->maxpacket = usb_maxpacket (dev->udev, dev->out, 1); > if (dev->maxpacket == 0) { > /* that is a broken device */ > + status = -EINVAL; But please use -ENODEV here. -EINVAL is typically reserved for bad user input. > goto out4; > } Johan