Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761967AbYBSBBz (ORCPT ); Mon, 18 Feb 2008 20:01:55 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751385AbYBSBBo (ORCPT ); Mon, 18 Feb 2008 20:01:44 -0500 Received: from mms2.broadcom.com ([216.31.210.18]:3617 "EHLO mms2.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750766AbYBSBBn (ORCPT ); Mon, 18 Feb 2008 20:01:43 -0500 X-Server-Uuid: D3C04415-6FA8-4F2C-93C1-920E106A2031 Subject: Re: TG3 network data corruption regression 2.6.24/2.6.23.4 From: "Michael Chan" To: "David Miller" cc: tonyb@cybernetics.com, herbert@gondor.apana.org.au, netdev , gregkh@suse.de, linux-kernel@vger.kernel.org In-Reply-To: <20080218.163554.74130592.davem@davemloft.net> References: <47BA0984.2070306@cybernetics.com> <1203381120.13495.78.camel@dell> <20080218.163554.74130592.davem@davemloft.net> Date: Mon, 18 Feb 2008 17:04:06 -0800 Message-ID: <1203383046.13495.87.camel@dell> MIME-Version: 1.0 X-Mailer: Evolution 2.0.2 (2.0.2-8) X-WSS-ID: 6BA4F5E559C5186507-01-01 Content-Type: text/plain Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1329 Lines: 36 On Mon, 2008-02-18 at 16:35 -0800, David Miller wrote: > One consequence of Herbert's change is that the chip will see a > different datastream. The initial skb->data linear area will be > smaller, and the transition to the fragmented area of pages will be > quicker. > I see. Perhaps when we get to the end of the data-stream, there is a tiny frag that the chip cannot handle. That's the only thing I can think of. Please try this patch to see if the problem goes away. This will disable SG on 5701 so we always get linear SKBs. diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index db606b6..bb37e76 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -12717,6 +12717,9 @@ static int __devinit tg3_init_one(struct pci_dev *pdev, } else tp->tg3_flags &= ~TG3_FLAG_RX_CHECKSUMS; + if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701) + dev->features &= ~(NETIF_F_IP_CSUM | NETIF_F_SG); + /* flow control autonegotiation is default behavior */ tp->tg3_flags |= TG3_FLAG_PAUSE_AUTONEG; tp->link_config.flowctrl = TG3_FLOW_CTRL_TX | TG3_FLOW_CTRL_RX; -- 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/