Re: Data corruption issue with splice() on 2.6.27.10

From: Willy Tarreau
Date: Tue Jan 06 2009 - 10:58:04 EST


On Tue, Jan 06, 2009 at 10:01:13AM +0000, Jarek Poplawski wrote:
> On Tue, Jan 06, 2009 at 10:41:38AM +0100, Willy Tarreau wrote:
> ...
> > > Great story! Alas I don't understand this fully either, but it seems
> > > Changli Gao was concerned with sendpage sending this "as pages", so
> > > when NETIF_F_SG flag is available. Did you try this without SG btw?
> >
> > No I did not. I can try, it's not too hard. It would in part defeat the
> > purpose of the mechanism (especially at 10 Gbps) but at least it will
> > help narrow the problem down.
>
> Yes, I meant it only as a proof of concept. BTW, delaying TCP acks a
> bit for these sendpages should then make it more reproducible, I guess.

OK here is an update. It does not change anything to turn off any acceleration
feature on the interface (tg3) :

root@wtap:~# ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: off
tx-checksumming: off
scatter-gather: off
tcp segmentation offload: off

It still forwards corrupted data like mad. I noticed that the corruption rate
is 10-100 times higher when forwarding from eth0 to eth0 than from eth0 to lo.

Maybe this can help find the culprit ?

Willy

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/