]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Add VLAN checksumming fix, fwd from DaveM
authorChris Wright <chrisw@redhat.com>
Wed, 21 Dec 2005 19:24:46 +0000 (11:24 -0800)
committerChris Wright <chrisw@redhat.com>
Wed, 21 Dec 2005 19:24:46 +0000 (11:24 -0800)
queue/fix-vlan-checksumming.patch [new file with mode: 0644]
queue/series

diff --git a/queue/fix-vlan-checksumming.patch b/queue/fix-vlan-checksumming.patch
new file mode 100644 (file)
index 0000000..46c0736
--- /dev/null
@@ -0,0 +1,36 @@
+From chrisw@osdl.org  Wed Dec 21 09:28:06 2005
+Date: Wed, 14 Dec 2005 16:29:02 -0800 (PST)
+Message-Id: <20051214.162902.42775251.davem@davemloft.net>
+To: stable@kernel.org
+From: "David S. Miller" <davem@davemloft.net>
+Cc: shemminger@osdl.org
+Subject: [VLAN]: Fix hardware rx csum errors
+
+From: Stephen Hemminger <shemminger@osdl.org>
+
+Receiving VLAN packets over a device (without VLAN assist) that is
+doing hardware checksumming (CHECKSUM_HW), causes errors because the
+VLAN code forgets to adjust the hardware checksum.
+
+Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Chris Wright <chrisw@redhat.com>
+---
+
+ net/8021q/vlan_dev.c |    3 +++
+ 1 files changed, 3 insertions(+)
+
+Index: linux-2.6.14.y/net/8021q/vlan_dev.c
+===================================================================
+--- linux-2.6.14.y.orig/net/8021q/vlan_dev.c
++++ linux-2.6.14.y/net/8021q/vlan_dev.c
+@@ -165,6 +165,9 @@ int vlan_skb_recv(struct sk_buff *skb, s
+       skb_pull(skb, VLAN_HLEN); /* take off the VLAN header (4 bytes currently) */
++      /* Need to correct hardware checksum */
++      skb_postpull_rcsum(skb, vhdr, VLAN_HLEN);
++
+       /* Ok, lets check to make sure the device (dev) we
+        * came in on is what this VLAN is attached to.
+        */
index 074bfc4adac5a529ef30a1732871185a88ed1c68..51d3bfd59f63640f1c74a0bcc5696c195a0c7c1f 100644 (file)
@@ -5,3 +5,4 @@ fix-unbalanced-read_unlock_bh-in-ctnetlink.patch
 acpi-fix-null-deref-in-video-lcd-brightness.patch
 dpt_i2o-fix-for-deadlock-condition.patch
 gre-fix-hardware-checksum-modification.patch
+fix-vlan-checksumming.patch