]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
be2net: Fix HW stall issue in Lancer
authorSuresh Reddy <suresh.reddy@broadcom.com>
Tue, 6 Feb 2018 13:52:41 +0000 (08:52 -0500)
committerJack Vogel <jack.vogel@oracle.com>
Fri, 9 Mar 2018 00:27:35 +0000 (16:27 -0800)
Orabug: 27615319

Lancer HW cannot handle a TSO packet with a single segment.
Disable TSO/GSO for such packets.

Signed-off-by: Suresh Reddy <suresh.reddy@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 3df40aad1a864af124bd50a1371ef16089ac9af2)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
drivers/net/ethernet/emulex/benet/be_main.c

index bb29587154660079768a97a664217ce30c5e872f..05b9149742fd82b31a3b76fb9aec390ab7cc7105 100644 (file)
@@ -5078,9 +5078,12 @@ static netdev_features_t be_features_check(struct sk_buff *skb,
                        features &= ~NETIF_F_TSO6;
 
                /* Lancer cannot handle the packet with MSS less than 256.
+                * Also it can't handle a TSO packet with a single segment
                 * Disable the GSO support in such cases
                 */
-               if (lancer_chip(adapter) && skb_shinfo(skb)->gso_size < 256)
+               if (lancer_chip(adapter) &&
+                   (skb_shinfo(skb)->gso_size < 256 ||
+                    skb_shinfo(skb)->gso_segs == 1))
                        features &= ~NETIF_F_GSO_MASK;
        }