]> git.baikalelectronics.ru Git - kernel.git/commit
tcp: fix ooo_okay setting vs Small Queues
authorEric Dumazet <edumazet@google.com>
Sat, 11 Oct 2014 01:06:35 +0000 (18:06 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 14 Oct 2014 17:12:00 +0000 (13:12 -0400)
commitd764ac42707133f389a5c718808bc59791b03b33
treef46795756a2b89adab83759a4e47befd8ba8aba6
parentecd95c878629d6cbe4f152574e631a808e2991b8
tcp: fix ooo_okay setting vs Small Queues

TCP Small Queues (tcp_tsq_handler()) can hold one reference on
sk->sk_wmem_alloc, preventing skb->ooo_okay being set.

We should relax test done to set skb->ooo_okay to take care
of this extra reference.

Minimal truesize of skb containing one byte of payload is
SKB_TRUESIZE(1)

Without this fix, we have more chance locking flows into the wrong
transmit queue.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_output.c