diff --git a/drivers/net/usb/gl620a.c b/drivers/net/usb/gl620a.c index 13a9a83b8538..08693eb89a3c 100644 --- a/drivers/net/usb/gl620a.c +++ b/drivers/net/usb/gl620a.c @@ -169,7 +169,7 @@ genelink_tx_fixup(struct usbnet *dev, struct sk_buff *skb, gfp_t flags) *packet_len = cpu_to_le32(length); // add padding byte - if ((skb->len % dev->maxpacket) == 0) + if (dev->maxpacket && (skb->len % dev->maxpacket) == 0) skb_put(skb, 1); return skb; diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c index 840c1c2ab16a..2ec943b71271 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c @@ -1401,7 +1401,7 @@ netdev_tx_t usbnet_start_xmit (struct sk_buff *skb, * handling ZLP/short packets, so cdc_ncm driver will make short * packet itself if needed. */ - if (length % dev->maxpacket == 0) { + if (dev->maxpacket && length % dev->maxpacket == 0) { if (!(info->flags & FLAG_SEND_ZLP)) { if (!(info->flags & FLAG_MULTI_PACKET)) { length++;