[1/4] UBUNTU: SAUCE: Revert "tcp: refine memory limit test in tcp_fragment()"
diff mbox series

Message ID 20190829004948.1573-2-tyhicks@canonical.com
State New
Headers show
Series
  • Multiple TCP Fixups
Related show

Commit Message

Tyler Hicks Aug. 29, 2019, 12:49 a.m. UTC
This reverts commit 92fc18789a3793965588087a1d7860f38f3c65b4. I've
received a private report detailing a performance regression in the
Xenial 4.4 kernel that is fixed by commit b617158dc096 ("tcp: be more
careful in tcp_fragment()"). Before pulling that patch in, it would be
best to revert my backport of commit b6653b3629e5 ("tcp: refine memory
limit test in tcp_fragment()") and go with the version that Eric Dumazet
provided for the upstream linux-stable 4.4 tree.

CVE-2019-11478

Signed-off-by: Tyler Hicks <tyhicks@canonical.com>
---
 net/ipv4/tcp_output.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Patch
diff mbox series

diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 719d2cc8770c..ede265fbf7ba 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -1163,8 +1163,7 @@  int tcp_fragment(struct sock *sk, struct sk_buff *skb, u32 len,
 	if (nsize < 0)
 		nsize = 0;
 
-	if (unlikely((sk->sk_wmem_queued >> 1) > sk->sk_sndbuf &&
-		     skb != tcp_send_head(sk))) {
+	if (unlikely((sk->sk_wmem_queued >> 1) > sk->sk_sndbuf)) {
 		NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPWQUEUETOOBIG);
 		return -ENOMEM;
 	}