linux-hardened/net/ipv4
David S. Miller d5ac99a648 [TCP]: skb pcount with MTU discovery
The problem is that when doing MTU discovery, the too-large segments in
the write queue will be calculated as having a pcount of >1.  When
tcp_write_xmit() is trying to send, tcp_snd_test() fails the cwnd test
when pcount > cwnd.

The segments are eventually transmitted one at a time by keepalive, but
this can take a long time.

This patch checks if TSO is enabled when setting pcount.

Signed-off-by: John Heffner <jheffner@psc.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-04-24 19:12:33 -07:00
..
ipvs Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
netfilter [NETFILTER]: Ignore PSH on SYN/ACK in TCP connection tracking 2005-04-24 18:42:39 -07:00
af_inet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ah4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
arp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
datagram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
devinet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
esp4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_frontend.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_hash.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_lookup.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_rules.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_semantics.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
icmp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
igmp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
inetpeer.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_forward.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_fragment.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_gre.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_options.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_output.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_sockglue.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipcomp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipconfig.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipip.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipmr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_drr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_random.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_rr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_wrandom.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
proc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
protocol.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
raw.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
route.c [NET]: skbuff: remove old NET_CALLER macro 2005-04-19 22:39:42 -07:00
syncookies.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sysctl_net_ipv4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_diag.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_ipv4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_minisocks.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_output.c [TCP]: skb pcount with MTU discovery 2005-04-24 19:12:33 -07:00
tcp_timer.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
udp.c [IPSEC]: COW skb header in UDP decap 2005-04-19 22:48:59 -07:00
utils.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_output.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_policy.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_state.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_tunnel.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00