3.2-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Eric Dumazet <[email protected]>

commit 9dae31009b1a00d926c6fe032d5a88099620adc3 upstream.

asix driver drops 8021Q full size frames because it doesn't take into
account VLAN header size.

Tested on AX88772 adapter.

Signed-off-by: Eric Dumazet <[email protected]>
CC: Greg Kroah-Hartman <[email protected]>
CC: Allan Chou <[email protected]>
CC: Trond Wuellner <[email protected]>
CC: Grant Grundler <[email protected]>
CC: Paul Stewart <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
[bwh: Backported to 3.2: no offset used in asix_rx_fixup()]
Signed-off-by: Ben Hutchings <[email protected]>
---
--- a/drivers/net/usb/asix.c
+++ b/drivers/net/usb/asix.c
@@ -35,6 +35,7 @@
 #include <linux/crc32.h>
 #include <linux/usb/usbnet.h>
 #include <linux/slab.h>
+#include <linux/if_vlan.h>
 
 #define DRIVER_VERSION "08-Nov-2011"
 #define DRIVER_NAME "asix"
@@ -348,7 +349,7 @@
                        return 2;
                }
 
-               if (size > dev->net->mtu + ETH_HLEN) {
+               if (size > dev->net->mtu + ETH_HLEN + VLAN_HLEN) {
                        netdev_err(dev->net, "asix_rx_fixup() Bad RX Length 
%d\n",
                                   size);
                        return 0;


--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to