public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v3 0/6] tcp: RFC 7323-compliant window retraction handling
@ 2026-03-09  8:02 Simon Baatz via B4 Relay
  2026-03-09  8:02 ` [PATCH net-next v3 1/6] tcp: implement RFC 7323 window retraction receiver requirements Simon Baatz via B4 Relay
                   ` (6 more replies)
  0 siblings, 7 replies; 27+ messages in thread
From: Simon Baatz via B4 Relay @ 2026-03-09  8:02 UTC (permalink / raw)
  To: Eric Dumazet, Neal Cardwell, Kuniyuki Iwashima, David S. Miller,
	Jakub Kicinski, Paolo Abeni, Simon Horman, Jonathan Corbet,
	Shuah Khan, David Ahern, Jon Maloy, Jason Xing, mfreemon,
	Shuah Khan, Stefano Brivio, Matthieu Baerts, Mat Martineau,
	Geliang Tang
  Cc: netdev, linux-doc, linux-kernel, linux-kselftest, mptcp,
	Simon Baatz

Hi,

this series implements the receiver-side requirements for TCP window
retraction as specified in RFC 7323 and adds packetdrill tests to
cover the new behavior.

Please see the first patch for background and implementation
details. Since MPTCP adjusts the TCP receive window on subflows, the
relevant MPTCP code paths are updated accordingly.

Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
---
Changes in v3:

- Address MPTCP subflow-level rcv_wnd adjustments
- Removed RFC status
- Adapt tcp_rcv_wnd_shrink_nomem.pkt to reflect 026dfef287c0 ("tcp:
  give up on stronger sk_rcvbuf checks (for now)")
- Link to v2: https://lore.kernel.org/r/20260226-tcp_rfc7323_retract_wnd_rfc-v2-0-aa3f8f9cc639@gmail.com

Changes in v2:

- tcp_rcv_wnd_shrink_nomem.pkt tests more RX code paths using various
  segment types. It also uses a more drastic rcv. buffer reduction (1MB
  to 16KB).
- Setting the TCP_REPAIR_WINDOW socket option initializes rcv_mwnd_seq.
- SKB_DROP_REASON_TCP_OVERWINDOW increases LINUX_MIB_BEYOND_WINDOW now.
- Moved rcv_mwnd_seq into rcv_wnd's cacheline group.
- Small editorial changes
- Link to v1: https://lore.kernel.org/r/20260220-tcp_rfc7323_retract_wnd_rfc-v1-0-904942561479@gmail.com

---
Simon Baatz (6):
      tcp: implement RFC 7323 window retraction receiver requirements
      mptcp: keep rcv_mwnd_seq in sync with subflow rcv_wnd
      tcp: increase LINUX_MIB_BEYOND_WINDOW for SKB_DROP_REASON_TCP_OVERWINDOW
      selftests/net: packetdrill: add tcp_rcv_wnd_shrink_nomem.pkt
      selftests/net: packetdrill: add tcp_rcv_wnd_shrink_allowed.pkt
      selftests/net: packetdrill: add tcp_rcv_neg_window.pkt

 .../networking/net_cachelines/tcp_sock.rst         |   1 +
 include/linux/tcp.h                                |   3 +
 include/net/tcp.h                                  |  22 ++++
 net/ipv4/tcp.c                                     |   2 +
 net/ipv4/tcp_fastopen.c                            |   1 +
 net/ipv4/tcp_input.c                               |  11 +-
 net/ipv4/tcp_minisocks.c                           |   1 +
 net/ipv4/tcp_output.c                              |   3 +
 net/mptcp/options.c                                |   6 +-
 .../net/packetdrill/tcp_rcv_big_endseq.pkt         |   2 +-
 .../net/packetdrill/tcp_rcv_neg_window.pkt         |  26 ++++
 .../net/packetdrill/tcp_rcv_wnd_shrink_allowed.pkt |  40 +++++++
 .../net/packetdrill/tcp_rcv_wnd_shrink_nomem.pkt   | 132 +++++++++++++++++++++
 13 files changed, 242 insertions(+), 8 deletions(-)
---
base-commit: 0bcac7b11262557c990da1ac564d45777eb6b005
change-id: 20260220-tcp_rfc7323_retract_wnd_rfc-c8a2d2baebde

Best regards,
-- 
Simon Baatz <gmbnomis@gmail.com>



^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2026-03-16 21:51 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-09  8:02 [PATCH net-next v3 0/6] tcp: RFC 7323-compliant window retraction handling Simon Baatz via B4 Relay
2026-03-09  8:02 ` [PATCH net-next v3 1/6] tcp: implement RFC 7323 window retraction receiver requirements Simon Baatz via B4 Relay
2026-03-09  9:22   ` Eric Dumazet
2026-03-09 18:35     ` Simon Baatz
2026-03-10  7:40       ` Eric Dumazet
2026-03-10  8:58   ` Stefano Brivio
2026-03-10 22:34     ` Simon Baatz
2026-03-09  8:02 ` [PATCH net-next v3 2/6] mptcp: keep rcv_mwnd_seq in sync with subflow rcv_wnd Simon Baatz via B4 Relay
2026-03-10  8:46   ` Eric Dumazet
2026-03-11 18:27   ` Matthieu Baerts
2026-03-11 22:08     ` Simon Baatz
2026-03-12 11:01       ` Matthieu Baerts
2026-03-09  8:02 ` [PATCH net-next v3 3/6] tcp: increase LINUX_MIB_BEYOND_WINDOW for SKB_DROP_REASON_TCP_OVERWINDOW Simon Baatz via B4 Relay
2026-03-09  9:27   ` Eric Dumazet
2026-03-09  8:02 ` [PATCH net-next v3 4/6] selftests/net: packetdrill: add tcp_rcv_wnd_shrink_nomem.pkt Simon Baatz via B4 Relay
2026-03-10  8:46   ` Eric Dumazet
2026-03-09  8:02 ` [PATCH net-next v3 5/6] selftests/net: packetdrill: add tcp_rcv_wnd_shrink_allowed.pkt Simon Baatz via B4 Relay
2026-03-10  8:52   ` Eric Dumazet
2026-03-09  8:02 ` [PATCH net-next v3 6/6] selftests/net: packetdrill: add tcp_rcv_neg_window.pkt Simon Baatz via B4 Relay
2026-03-10  8:54   ` Eric Dumazet
2026-03-10 23:09     ` Simon Baatz
2026-03-14  3:58       ` Eric Dumazet
2026-03-14 14:55         ` Eric Dumazet
2026-03-14 15:01           ` Jakub Kicinski
2026-03-14 17:07         ` Simon Baatz
2026-03-16 21:51           ` Simon Baatz
2026-03-14 15:40 ` [PATCH net-next v3 0/6] tcp: RFC 7323-compliant window retraction handling patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox