From: Tony Battersby <tonyb@cybernetics.com>
To: Matt Carlson <mcarlson@broadcom.com>
Cc: Michael Chan <mchan@broadcom.com>,
David Miller <davem@davemloft.net>,
herbert@gondor.apana.org.au, netdev <netdev@vger.kernel.org>,
gregkh@suse.de, linux-kernel@vger.kernel.org
Subject: Re: TG3 network data corruption regression 2.6.24/2.6.23.4
Date: Wed, 20 Feb 2008 16:29:57 -0500 [thread overview]
Message-ID: <47BC9BD5.8040900@cybernetics.com> (raw)
In-Reply-To: <20080220013824.GA5416@localdomain>
Update:
Herbert's patch alters the arguments to alloc_skb_fclone() and
skb_reserve() from within sk_stream_alloc_pskb(). This changes the
skb_headroom() and skb_tailroom() of the returned skb. I decided to see
if I could detect the precise point at which data corruption started to
happen. The result is this table:
(sk_stream_alloc_pskb() called with size == 1448;
sk->sk_prot->max_header == 160)
skb_headroom skb_tailroom test result note
216 1448 fail [1]
344 1448 fail
340 1452 pass
336 1456 pass
332 1460 pass
328 1464 fail
324 1468 pass
320 1472 pass
316 1476 pass
312 1480 fail
308 1484 pass
304 1488 pass
300 1492 pass
296 1496 fail
292 1500 pass
288 1504 pass
284 1508 pass
280 1512 fail
276 1516 pass
272 1520 pass
268 1524 pass
264 1528 fail
260 1532 pass
256 1536 pass [2]
Notes:
[1] Kernels 2.6.23.4 - 2.6.23.16 and 2.6.24 - current with Herbert's patch
[2] Kernels 2.6.23.3 and before without Herbert's patch
Note that the first row has skb_headroom + skb_tailroom == 1664; the
remaining rows have skb_headroom + skb_tailroom == 1792.
>From these results, it looks like a data alignment issue. Herbert's
patch unfortunately just happened to change the alignment in a way that
made it break.
Tony
next prev parent reply other threads:[~2008-02-20 21:29 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-18 22:41 TG3 network data corruption regression 2.6.24/2.6.23.4 Tony Battersby
2008-02-19 0:32 ` Michael Chan
2008-02-19 0:35 ` David Miller
2008-02-19 1:04 ` Michael Chan
2008-02-19 16:16 ` Tony Battersby
2008-02-19 19:11 ` Michael Chan
2008-02-19 19:26 ` Tony Battersby
2008-02-19 22:14 ` Tony Battersby
2008-02-19 23:52 ` Michael Chan
2008-02-20 15:01 ` Tony Battersby
2008-02-20 1:38 ` Matt Carlson
2008-02-20 16:13 ` Tony Battersby
2008-02-20 21:29 ` Tony Battersby [this message]
2008-02-20 23:04 ` Tony Battersby
2008-02-20 23:08 ` David Miller
2008-02-20 23:17 ` Michael Chan
2008-02-20 3:45 ` Herbert Xu
2008-02-20 15:18 ` Tony Battersby
2008-04-15 0:12 ` Matt Carlson
2008-04-15 15:39 ` Tony Battersby
2008-04-16 3:31 ` David Miller
2008-04-16 15:40 ` Michael Chan
2008-04-16 20:17 ` Matt Carlson
2008-04-16 21:00 ` Tony Battersby
2008-04-18 6:20 ` David Miller
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=47BC9BD5.8040900@cybernetics.com \
--to=tonyb@cybernetics.com \
--cc=davem@davemloft.net \
--cc=gregkh@suse.de \
--cc=herbert@gondor.apana.org.au \
--cc=linux-kernel@vger.kernel.org \
--cc=mcarlson@broadcom.com \
--cc=mchan@broadcom.com \
--cc=netdev@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).