tcp: Do not tack on TSO data to non-TSO packet
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 28 Jun 2009 18:06:41 +0000 (18:06 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 30 Jun 2009 02:41:43 +0000 (19:41 -0700)
commit6828b92bd21acd65113dfe0541f19f5df0d9668f
treebe9b1009500891d7598a2c19a63fad9c0a28f17c
parent8e5b9dda99cc86bdbd822935fcc37c5808e271b3
tcp: Do not tack on TSO data to non-TSO packet

If a socket starts out on a non-TSO route, and then switches to
a TSO route, then we will tack on data to the tail of the tx queue
even if it started out life as non-TSO.  This is suboptimal because
all of it will then be copied and checksummed unnecessarily.

This patch fixes this by ensuring that skb->ip_summed is set to
CHECKSUM_PARTIAL before appending extra data beyond the MSS.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c