netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Holger Hoffstaette" <holger@wizards.de>
To: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Subject: Re: Reproducible data corruption with sendfile+vsftp - splice regression?
Date: Fri, 30 Nov 2007 10:20:26 +0100	[thread overview]
Message-ID: <pan.2007.11.30.09.20.24.737500@wizards.de> (raw)
In-Reply-To: 474FC4D9.3020506@cosmosbay.com

On Fri, 30 Nov 2007 09:07:53 +0100, Eric Dumazet wrote:

> CC to netdev, it might concern network guys

It is indeed related to network/r8169, more below.

> Could you try with a test file containing unique patterns ?

Same result, here is new information.

- contrary to my first posting, the corruption does not reliably occur
when a second client pulls the file; sorry for that. The difference is
that the box that gets corrupted data only has a 100mbit interface, while
the one that gets working data is completely gigabit (all on the same
switch though).

- after some digging in my server changelogs I noticed that I had enabled
misc. r8169 offload options not too long ago (while migrating to gigabit
and perftesting the new network), and bingo! Turning off tso (leaving all
others on except for UDP which is apparently not implemented) singled out
the corruption while ftp'ing to the slower 100mbit client.

I have since just permanently disabled tso and everything is
fine with and without sendfile. So this seems to be either a bug with the
r8169 or some bad interaction of tso with sendfile, but then maybe it's
just the symptom of a race condition/timing problem. Is tso on the r8169
known to be kaput?

lspci says:

00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 17
        I/O ports at d000 [size=256]
        Memory at f6022000 (32-bit, non-prefetchable) [size=256]
        [virtual] Expansion ROM at 60000000 [disabled] [size=128K]
        Capabilities: [dc] Power Management version 2

Further suggestions welcome, looks like we're getting somewhere.
I can still create broken files with tso and the unique patterns that Eric
suggested, if that helps tracking down the tso corruption.

thank you!
Holger

  reply	other threads:[~2007-11-30  9:20 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <pan.2007.11.29.23.42.52.661624@wizards.de>
2007-11-30  8:07 ` Reproducible data corruption with sendfile+vsftp - splice regression? Eric Dumazet
2007-11-30  9:20   ` Holger Hoffstaette [this message]
2007-11-30 10:39     ` Holger Hoffstaette
2007-11-30 18:26     ` Rick Jones
2007-12-02 16:00       ` Holger Hoffstaette
2007-12-02 20:49         ` Holger Hoffstaette
2007-12-05 22:54           ` Francois Romieu
2007-12-06  1:13             ` Francois Romieu
2007-12-06  9:41               ` Holger Hoffstaette
2007-12-06  9:28             ` Holger Hoffstaette
2007-12-06 18:44               ` Francois Romieu
2007-12-08 15:28                 ` Mark Lord
2007-12-13  2:19                 ` Holger Hoffstaette
2007-12-15 10:24                   ` Holger Hoffstaette
2007-12-15 13:43                 ` Holger Hoffstaette

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=pan.2007.11.30.09.20.24.737500@wizards.de \
    --to=holger@wizards.de \
    --cc=linux-kernel@vger.kernel.org \
    --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).