| Submitter | Stephane Fillod |
|---|---|
| Date | April 20, 2012, 7:39 p.m. |
| Message ID | <20120420193923.GQ5277@charybde.local> |
| Download | mbox | patch |
| Permalink | /patch/154121/ |
| State | Accepted |
| Delegated to: | David Miller |
| Headers | show |
Comments
From: Stephane Fillod <fillods@users.sf.net> Date: Fri, 20 Apr 2012 21:39:23 +0200 > Make smsc95xx recalculate the hard_mtu after adjusting the > hard_header_len. > > Without this, usbnet adjusts the MTU down to 1488 bytes, and the host is > unable to receive standard 1500-byte frames from the device. > > Inspired by same fix on cdc_eem 78fb72f7936c01d5b426c03a691eca082b03f2b9. > > Tested on ARM/Beagle. > > Signed-off-by: Stephane Fillod <fillods@users.sf.net> Applied, thanks. Ok, now we've made this fix to 2 or 3 USB net drivers, can someone audit to see if any more remain? -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Patch
--- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c @@ -1016,6 +1016,7 @@ dev->net->ethtool_ops = &smsc95xx_ethtool_ops; dev->net->flags |= IFF_MULTICAST; dev->net->hard_header_len += SMSC95XX_TX_OVERHEAD_CSUM; + dev->hard_mtu = dev->net->mtu + dev->net->hard_header_len; return 0; }
Make smsc95xx recalculate the hard_mtu after adjusting the hard_header_len. Without this, usbnet adjusts the MTU down to 1488 bytes, and the host is unable to receive standard 1500-byte frames from the device. Inspired by same fix on cdc_eem 78fb72f7936c01d5b426c03a691eca082b03f2b9. Tested on ARM/Beagle. Signed-off-by: Stephane Fillod <fillods@users.sf.net> --- -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html