From a7dbd95532ceefb4c8b777911b55d71a20191fa4 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 11 Feb 2025 11:37:07 +0100 Subject: [PATCH] 6.12-stable patches added patches: mptcp-prevent-excessive-coalescing-on-receive.patch --- ...vent-excessive-coalescing-on-receive.patch | 37 +++++++++++++++++++ queue-6.12/series | 1 + 2 files changed, 38 insertions(+) create mode 100644 queue-6.12/mptcp-prevent-excessive-coalescing-on-receive.patch diff --git a/queue-6.12/mptcp-prevent-excessive-coalescing-on-receive.patch b/queue-6.12/mptcp-prevent-excessive-coalescing-on-receive.patch new file mode 100644 index 00000000000..f0d3bdfd183 --- /dev/null +++ b/queue-6.12/mptcp-prevent-excessive-coalescing-on-receive.patch @@ -0,0 +1,37 @@ +From 56b824eb49d6258aa0bad09a406ceac3f643cdae Mon Sep 17 00:00:00 2001 +From: Paolo Abeni +Date: Mon, 30 Dec 2024 19:12:32 +0100 +Subject: mptcp: prevent excessive coalescing on receive + +From: Paolo Abeni + +commit 56b824eb49d6258aa0bad09a406ceac3f643cdae upstream. + +Currently the skb size after coalescing is only limited by the skb +layout (the skb must not carry frag_list). A single coalesced skb +covering several MSS can potentially fill completely the receive +buffer. In such a case, the snd win will zero until the receive buffer +will be empty again, affecting tput badly. + +Fixes: 8268ed4c9d19 ("mptcp: introduce and use mptcp_try_coalesce()") +Cc: stable@vger.kernel.org # please delay 2 weeks after 6.13-final release +Signed-off-by: Paolo Abeni +Reviewed-by: Mat Martineau +Signed-off-by: Matthieu Baerts (NGI0) +Link: https://patch.msgid.link/20241230-net-mptcp-rbuf-fixes-v1-3-8608af434ceb@kernel.org +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + net/mptcp/protocol.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/net/mptcp/protocol.c ++++ b/net/mptcp/protocol.c +@@ -136,6 +136,7 @@ static bool mptcp_try_coalesce(struct so + int delta; + + if (MPTCP_SKB_CB(from)->offset || ++ ((to->len + from->len) > (sk->sk_rcvbuf >> 3)) || + !skb_try_coalesce(to, from, &fragstolen, &delta)) + return false; + diff --git a/queue-6.12/series b/queue-6.12/series index dfd22fc47ca..5284c74a36f 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -408,3 +408,4 @@ spi-atmel-quadspi-create-atmel_qspi_ops-to-support-newer-soc-families.patch spi-atmel-qspi-memory-barriers-after-memory-mapped-i-o.patch revert-btrfs-avoid-monopolizing-a-core-when-activating-a-swap-file.patch btrfs-avoid-monopolizing-a-core-when-activating-a-swap-file.patch +mptcp-prevent-excessive-coalescing-on-receive.patch -- 2.47.2