From: Patrick McHardy <kaber@trash.net>
To: Herbert Xu <herbert@gondor.apana.org.au>, KdF <dkiba@yandex.ru>
Cc: Knut Petersen <Knut_Petersen@t-online.de>,
shemminger@osdl.org, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org,
"David S. Miller" <davem@davemloft.net>,
netfilter-devel@lists.netfilter.org
Subject: Re: [BUG] sky2 broken for Yukon PCI-E Gigabit Ethernet Controller 11ab:4362 (rev 19)
Date: Fri, 27 Jan 2006 16:28:25 +0100 [thread overview]
Message-ID: <43DA3C19.2040002@trash.net> (raw)
In-Reply-To: <20060127122242.GA32128@gondor.apana.org.au>
[-- Attachment #1: Type: text/plain, Size: 1050 bytes --]
Herbert Xu wrote:
> On Fri, Jan 27, 2006 at 07:07:34AM +0100, Knut Petersen wrote:
>
>>Well, there are no problems if SuSEfirewall2 is disabled. But have a look
>>at the loaded modules:
>>
>>ipt_MASQUERADE 3968 1
>>pppoe 15360 2
>>pppox 4616 1 pppoe
>
>
> OK, although we can't rule out sky2/netfilter from the enquiry, I've
> identified two bugs in ppp/pppoe that may be responsible for what you
> are seeing. So please try the following patch and let us know if the
> problem still exists (or deteriorates/improves).
>
> [PPP]: Fixed hardware RX checksum handling
>
> When we pull the PPP protocol off the skb, we forgot to update the
> hardware RX checksum. This may lead to messages such as
>
> dsl0: hw csum failure.
>
> Similarly, we need to clear the hardware checksum flag when we use
> the existing packet to store the decompressed result.
We had a couple of reports of incorrect hardware checksums with
PPPoE. KdF, can you test Herbert's patch (attached again to this
mail) please?
[-- Attachment #2: ppp-rxcsum --]
[-- Type: text/plain, Size: 682 bytes --]
diff --git a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c
--- a/drivers/net/ppp_generic.c
+++ b/drivers/net/ppp_generic.c
@@ -1610,6 +1610,8 @@ ppp_receive_nonmp_frame(struct ppp *ppp,
}
else if (!pskb_may_pull(skb, skb->len))
goto err;
+ else
+ skb->ip_summed = CHECKSUM_NONE;
len = slhc_uncompress(ppp->vj, skb->data + 2, skb->len - 2);
if (len <= 0) {
@@ -1690,6 +1692,7 @@ ppp_receive_nonmp_frame(struct ppp *ppp,
kfree_skb(skb);
} else {
skb_pull(skb, 2); /* chop off protocol */
+ skb_postpull_rcsum(skb, skb->data - 2, 2);
skb->dev = ppp->dev;
skb->protocol = htons(npindex_to_ethertype[npi]);
skb->mac.raw = skb->data;
next prev parent reply other threads:[~2006-01-27 15:28 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-21 5:41 [BUG] sky2 broken for Yukon PCI-E Gigabit Ethernet Controller 11ab:4362 (rev 19) Knut Petersen
2006-01-23 18:15 ` Stephen Hemminger
2006-01-23 19:20 ` Knut Petersen
2006-01-23 19:27 ` Stephen Hemminger
2006-01-24 9:43 ` Knut Petersen
2006-01-24 17:54 ` Stephen Hemminger
2006-01-24 20:32 ` Herbert Xu
2006-01-27 6:07 ` Knut Petersen
2006-01-27 12:22 ` Herbert Xu
2006-01-27 15:28 ` Patrick McHardy [this message]
2006-01-27 16:04 ` Knut Petersen
2006-02-04 10:32 ` Knut Petersen
-- strict thread matches above, loose matches on Subject: below --
2006-01-21 12:11 Knut Petersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43DA3C19.2040002@trash.net \
--to=kaber@trash.net \
--cc=Knut_Petersen@t-online.de \
--cc=davem@davemloft.net \
--cc=dkiba@yandex.ru \
--cc=herbert@gondor.apana.org.au \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@lists.netfilter.org \
--cc=shemminger@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.