[PATCH net-next v3 0/7] mptcp: out-of-order queue pruning

"Matthieu Baerts (NGI0)" <[email protected]>
Newsgroups org.kernel.vger.linux-kernel,dev.linux.lists.mptcp,org.kernel.vger.netdev
Message-ID <20260807-net-next-mptcp-oooq-pruning-v3-0-dbc1eb853cc3@kernel.org>
Under memory pressure, a pruning of the MPTCP-level OoO queue might be
required as last resort, to avoid too long recoveries, or even stalls.
Geliang and Gang managed to reproduce this behaviour, and Paolo
improved the situation thanks to the following patches:

- Patches 1-3: improve the MPTCP-level retransmission schema to make
  recoveries from memory pressure/after MPTCP-level drop significantly
  faster.

- Patches 4-5: make the admission check way stricter for incoming
  packets exceeding the memory limits, with some exceptions for fallback
  sockets.

- Patches 6-7: implement OoO queue pruning for MPTCP.

Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>
---
Changes in v3:
- Address comments from Clashiko.
- Patches 2, 6: new
- Patch 3: many cleanups, needed after patch 2.
- Patch 4: check backlog and rcvbuf separately + do not drop rst
- Patch 7: prune only for new data + reorganize code to follow TCP
- Link to v2: https://patch.msgid.link/20260731-net-next-mptcp-oooq-pruning-v2-0-24838164fa21@kernel.org

Changes in v2:
- Address comments from Clashiko.
- Patch 3: typo, comment, bump TCP MIB counter.
- Patch 5: uniform MIB counter name.
- Rebased.
- Link to v1: https://patch.msgid.link/20260724-net-next-mptcp-oooq-pruning-v1-0-5dd4dec63a54@kernel.org

---
Paolo Abeni (7):
      mptcp: move the retrans loop to a separate helper
      mptcp: move the stale logic out of retrans scheduler
      mptcp: let the retrans scheduler do its job
      mptcp: explicitly drop over memory limits
      mptcp: enforce hard limit on backlog flushing
      mptcp: avoid code duplication in __mptcp_move_skb()
      mptcp: implemented OoO queue pruning

 net/mptcp/mib.c      |   3 +
 net/mptcp/mib.h      |   3 +
 net/mptcp/options.c  |  32 +++++-
 net/mptcp/pm.c       |  41 +++++---
 net/mptcp/protocol.c | 290 ++++++++++++++++++++++++++++++++++++---------------
 net/mptcp/protocol.h |  11 +-
 6 files changed, 273 insertions(+), 107 deletions(-)
---
base-commit: 4fa4977a0d900f936bcae5cd2c510be5554e8dd6
change-id: 20260724-net-next-mptcp-oooq-pruning-48566d10dbd0

Best regards,
--  
Matthieu Baerts (NGI0) <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.