From: Rabin Vincent Date: Thu, 29 Mar 2012 07:15:15 +0000 (+0000) Subject: net: usb: cdc_eem: fix mtu X-Git-Tag: v3.4-rc2~37^2~2 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=78fb72f7936c01d5b426c03a691eca082b03f2b9;p=~emulex%2Finfiniband.git net: usb: cdc_eem: fix mtu Make CDC EEM recalculate the hard_mtu after adjusting the hard_header_len. Without this, usbnet adjusts the MTU down to 1494 bytes, and the host is unable to receive standard 1500-byte frames from the device. Tested with the Linux USB Ethernet gadget. Cc: Oliver Neukum Signed-off-by: Rabin Vincent Signed-off-by: David S. Miller --- diff --git a/drivers/net/usb/cdc_eem.c b/drivers/net/usb/cdc_eem.c index 439690be519..685a4e22c76 100644 --- a/drivers/net/usb/cdc_eem.c +++ b/drivers/net/usb/cdc_eem.c @@ -93,6 +93,7 @@ static int eem_bind(struct usbnet *dev, struct usb_interface *intf) /* no jumbogram (16K) support for now */ dev->net->hard_header_len += EEM_HEAD + ETH_FCS_LEN; + dev->hard_mtu = dev->net->mtu + dev->net->hard_header_len; return 0; }