]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.31/patches.drivers/cxgb3-fix_lro_switch.patch
Reenabled linux-xen, added patches for Xen Kernel Version 2.6.27.31,
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / cxgb3-fix_lro_switch.patch
diff --git a/src/patches/suse-2.6.27.31/patches.drivers/cxgb3-fix_lro_switch.patch b/src/patches/suse-2.6.27.31/patches.drivers/cxgb3-fix_lro_switch.patch
new file mode 100644 (file)
index 0000000..40d6914
--- /dev/null
@@ -0,0 +1,32 @@
+From: Divy Le Ray <divy@chelsio.com>
+Date: Thu, 5 Feb 2009 00:31:39 +0000 (-0800)
+Subject: cxgb3: Fix lro switch
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fdavem%2Fnet-2.6.git;a=commitdiff_plain;h=65ab8385b67854792e89267907f9fcb27e779f95
+
+cxgb3: Fix lro switch
+
+The LRO switch is always set to 1 in the rx processing loop.
+It breaks the accelerated iSCSI receive traffic.
+Fix its computation.
+
+Signed-off-by: Divy Le Ray <divy@chelsio.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Acked-by: John Jolly <jjolly@suse.de>
+---
+
+---
+ drivers/net/cxgb3/sge.c |    3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/net/cxgb3/sge.c
++++ b/drivers/net/cxgb3/sge.c
+@@ -2270,8 +2270,7 @@ no_mem:
+               } else if ((len = ntohl(r->len_cq)) != 0) {
+                       struct sge_fl *fl;
+-                      if (eth)
+-                              lro = qs->lro_enabled && is_eth_tcp(rss_hi);
++                      lro &= eth && is_eth_tcp(rss_hi);
+                       fl = (len & F_RSPD_FLQ) ? &qs->fl[1] : &qs->fl[0];
+                       if (fl->use_pages) {