netdev
[Top] [All Lists]

Re: bad TSO performance in 2.6.9-rc2-BK

To: "David S. Miller" <davem@xxxxxxxxxxxxx>
Subject: Re: bad TSO performance in 2.6.9-rc2-BK
From: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 28 Sep 2004 15:15:39 +1000
Cc: jheffner@xxxxxxx, ak@xxxxxxx, niv@xxxxxxxxxx, andy.grover@xxxxxxxxx, anton@xxxxxxxxx, netdev@xxxxxxxxxxx
In-reply-to: <20040927215901.6f65dc15.davem@xxxxxxxxxxxxx>
References: <20040923161141.4ea9be4c.davem@xxxxxxxxxxxxx> <Pine.NEB.4.33.0409271416360.14606-100000@xxxxxxxxxxxxxx> <20040927160411.22b44f48.davem@xxxxxxxxxxxxx> <20040927233639.GA8333@xxxxxxxxxxxxxxxxxxx> <20040927171356.6a59d039.davem@xxxxxxxxxxxxx> <20040928003412.GA8755@xxxxxxxxxxxxxxxxxxx> <20040927215901.6f65dc15.davem@xxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mutt/1.5.6+20040722i
On Mon, Sep 27, 2004 at 09:59:01PM -0700, David S. Miller wrote:
> 
> It's got a nasty bug though, I'm not updating
> TCP_SKB_CB(skb)->seq so retransmits have corrupted
> sequence numbers, doh!  And hey if I update that
> then I do not need this tso_offset thingy.

Nice work.

> +     if (skb->len != (data_end_seq - data_seq)) {

Please make that > so that I can sleep at night :)

> +             if (__tcp_trim_head(sk, skb, data_end_seq - data_seq))

The argument to __tcp_trim_head should be

skb->len - (data_end_seq - data_seq)

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

<Prev in Thread] Current Thread [Next in Thread>