Eric Dumazet 22b4a4f22d tcp: fix retransmit of partially acked frames
Alexander Beregalov reported skb_over_panic errors and provided stack
trace.

I occurs commit a21d45726aca (tcp: avoid order-1 allocations on wifi and
tx path) added a regression, when a retransmit is done after a partial
ACK.

tcp_retransmit_skb() tries to aggregate several frames if the first one
has enough available room to hold the following ones payload. This is
controlled by /proc/sys/net/ipv4/tcp_retrans_collapse tunable (default :
enabled)

Problem is we must make sure _pskb_trim_head() doesnt fool
skb_availroom() when pulling some bytes from skb (this pull is done when
receiver ACK part of the frame).

Reported-by: Alexander Beregalov <a.beregalov@gmail.com>
Cc: Marc MERLIN <marc@merlins.org>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-04-18 16:52:45 -04:00
..
2012-03-28 18:30:03 +01:00
2012-03-28 15:58:21 -07:00
2012-03-28 18:30:03 +01:00
2012-03-28 18:30:03 +01:00
2012-03-08 00:30:32 -08:00
2012-03-11 23:42:51 -07:00
2012-03-11 23:42:51 -07:00
2012-03-11 23:42:51 -07:00
2012-03-28 18:30:03 +01:00
2011-12-12 19:04:10 -05:00
2012-03-28 18:30:03 +01:00
2012-03-19 16:53:08 -04:00
2012-03-11 23:42:51 -07:00
2012-03-11 15:52:12 -07:00
2012-01-20 14:17:26 -05:00
2012-01-20 14:17:26 -05:00
2012-04-10 15:30:16 -07:00
2012-01-31 12:14:00 -05:00
2012-03-11 23:42:51 -07:00
2012-01-17 10:31:12 -05:00
2012-03-28 18:30:03 +01:00