[PATCH mptcp-next 0/2] Squash to "mptcp: out-of-order queue pruning"

Matthieu Baerts (NGI0) posted 2 patches 2 weeks, 1 day ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/20260731-mptcp-squash-ooo-pruning-v1-0-a5f5115e1e24@kernel.org
There is a newer version of this series
net/mptcp/mib.c      | 2 +-
net/mptcp/mib.h      | 4 ++--
net/mptcp/options.c  | 6 +++++-
net/mptcp/protocol.c | 2 +-
4 files changed, 9 insertions(+), 5 deletions(-)
[PATCH mptcp-next 0/2] Squash to "mptcp: out-of-order queue pruning"
Posted by Matthieu Baerts (NGI0) 2 weeks, 1 day ago
Addressing comments reported by Clashiko [1], but not detected before
with the AI review tools using a different model version.

Note: the last comment from the 3rd patch has not been addressed, as it
is not clear to me whether this comment is valid:

---------------------------------- 8< ----------------------------------

> diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c
> index 72b1fa3ca71c..5f7d8340a3d9 100644
> --- a/net/mptcp/protocol.c
> +++ b/net/mptcp/protocol.c

[ ... ]

> @@ -682,6 +693,16 @@ static void __mptcp_add_backlog(struct sock *sk,
>  		return;
>  	}
>
> +	/* Similar additional allowance as plain TCP. */
> +	limit = READ_ONCE(sk->sk_rcvbuf);
> +	limit += (limit >> 1) + 64 * 1024;
> +	limit = min_t(u64, limit, UINT_MAX);
> +	if (msk->backlog_len > limit && !__mptcp_check_fallback(msk)) {
> +		__MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_BACKLOGDROP);
> +		kfree_skb_reason(skb, SKB_DROP_REASON_SOCKET_BACKLOG);
> +		return;
> +	}
> +

[Low]
The check compares the current backlog_len against limit before the
incoming skb's truesize is added (the truesize is folded in at the
account: label further down). Was that intentional?
TCP's sk_add_backlog() analog compares queue_size + skb->truesize
against the limit, so a single skb can push msk->backlog_len past
limit here and the drop only fires on the next admission. The overshoot
is bounded by one skb's truesize and the commit message already notes
"This is not a complete fix for the stall issue, as the drop strategy
needs refinements that will come in the next patches.", so perhaps this
is one of the follow-up items?

---------------------------------- 8< ----------------------------------

Link: https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260724-net-next-mptcp-oooq-pruning-v1-0-5dd4dec63a54%40kernel.org
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
Matthieu Baerts (NGI0) (2):
      Squash to "mptcp: explicitly drop over memory limits"
      Squash to "mptcp: implemented OoO queue pruning"

 net/mptcp/mib.c      | 2 +-
 net/mptcp/mib.h      | 4 ++--
 net/mptcp/options.c  | 6 +++++-
 net/mptcp/protocol.c | 2 +-
 4 files changed, 9 insertions(+), 5 deletions(-)
---
base-commit: 23c7cb4262d954b810468b0e661d48af82b418d5
change-id: 20260730-mptcp-squash-ooo-pruning-53d668d4c2aa

Best regards,
--  
Matthieu Baerts (NGI0) <matttbe@kernel.org>
Re: [PATCH mptcp-next 0/2] Squash to "mptcp: out-of-order queue pruning"
Posted by MPTCP CI 2 weeks, 1 day ago
Hi Matthieu,

Thank you for your modifications, that's great!

But sadly, our CI spotted some issues with it when trying to build it.

You can find more details there:

  https://github.com/multipath-tcp/mptcp_net-next/actions/runs/30621520151

Status: failure
Initiator: Patchew Applier
Commits: https://github.com/multipath-tcp/mptcp_net-next/commits/ca0afcf3d680
Patchwork: https://patchwork.kernel.org/project/mptcp/list/?series=1138022

Feel free to reply to this email if you cannot access logs, if you need
some support to fix the error, if this doesn't seem to be caused by your
modifications or if the error is a false positive one.

Cheers,
MPTCP GH Action bot
Bot operated by Matthieu Baerts (NGI0 Core)