diff options
Diffstat (limited to 'drivers/net/usb/usbnet.c')
| -rw-r--r-- | drivers/net/usb/usbnet.c | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c index 840c1c2ab16a..a33d7fb82a00 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c @@ -1788,6 +1788,11 @@ usbnet_probe (struct usb_interface *udev, const struct usb_device_id *prod)  	if (!dev->rx_urb_size)  		dev->rx_urb_size = dev->hard_mtu;  	dev->maxpacket = usb_maxpacket (dev->udev, dev->out, 1); +	if (dev->maxpacket == 0) { +		/* that is a broken device */ +		status = -ENODEV; +		goto out4; +	}  	/* let userspace know we have a random address */  	if (ether_addr_equal(net->dev_addr, node_id)) |