Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935801AbXEUTxx (ORCPT ); Mon, 21 May 2007 15:53:53 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1765974AbXEUT3r (ORCPT ); Mon, 21 May 2007 15:29:47 -0400 Received: from 216-99-217-87.dsl.aracnet.com ([216.99.217.87]:52693 "EHLO sous-sol.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934138AbXEUT3q (ORCPT ); Mon, 21 May 2007 15:29:46 -0400 Message-Id: <20070521191721.500445000@sous-sol.org> References: <20070521191612.800400000@sous-sol.org> User-Agent: quilt/0.46-1 Date: Mon, 21 May 2007 12:16:36 -0700 From: Chris Wright To: linux-kernel@vger.kernel.org, stable@kernel.org Cc: Justin Forbes , Zwane Mwaikambo , "Theodore Ts'o" , Randy Dunlap , Dave Jones , Chuck Wolber , Chris Wedgwood , Michael Krufky , Chuck Ebbert , torvalds@linux-foundation.org, akpm@linux-foundation.org, alan@lxorguk.ukuu.org.uk, "Michael Chan" , David S Miller Subject: [patch 24/69] BNX2: Fix TSO problem with small MSS. Content-Disposition: inline; filename=bnx2-fix-tso-problem-with-small-mss.patch Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1349 Lines: 40 -stable review patch. If anyone has any objections, please let us know. --------------------- From: Remove the check for skb->len greater than MTU when doing TSO. When the destination has a smaller MSS than the source, a TSO packet may be smaller than the MTU at the source and we still need to process it as a TSO packet. Thanks to Brian Ristuccia for reporting the problem. Signed-off-by: Michael Chan Signed-off-by: David S. Miller Signed-off-by: Chris Wright --- drivers/net/bnx2.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- linux-2.6.21.1.orig/drivers/net/bnx2.c +++ linux-2.6.21.1/drivers/net/bnx2.c @@ -4510,8 +4510,7 @@ bnx2_start_xmit(struct sk_buff *skb, str vlan_tag_flags |= (TX_BD_FLAGS_VLAN_TAG | (vlan_tx_tag_get(skb) << 16)); } - if ((mss = skb_shinfo(skb)->gso_size) && - (skb->len > (bp->dev->mtu + ETH_HLEN))) { + if ((mss = skb_shinfo(skb)->gso_size)) { u32 tcp_opt_len, ip_tcp_len; if (skb_header_cloned(skb) && -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/