|
|
Log in / Subscribe / Register

mptcp: implement .read_sock and .splice_read

From:  "Matthieu Baerts (NGI0)" <matttbe-AT-kernel.org>
To:  Mat Martineau <martineau-AT-kernel.org>, Geliang Tang <geliang-AT-kernel.org>, "David S. Miller" <davem-AT-davemloft.net>, Eric Dumazet <edumazet-AT-google.com>, Jakub Kicinski <kuba-AT-kernel.org>, Paolo Abeni <pabeni-AT-redhat.com>, Simon Horman <horms-AT-kernel.org>, Neal Cardwell <ncardwell-AT-google.com>, Kuniyuki Iwashima <kuniyu-AT-google.com>, David Ahern <dsahern-AT-kernel.org>, Shuah Khan <shuah-AT-kernel.org>
Subject:  [PATCH net-next 0/6] mptcp: implement .read_sock and .splice_read
Date:  Thu, 29 Jan 2026 20:23:33 +0100
Message-ID:  <20260129-net-next-mptcp-splice-v1-0-994cac40daa0@kernel.org>
Cc:  netdev-AT-vger.kernel.org, mptcp-AT-lists.linux.dev, linux-kernel-AT-vger.kernel.org, linux-kselftest-AT-vger.kernel.org, "Matthieu Baerts (NGI0)" <matttbe-AT-kernel.org>, Hannes Reinecke <hare-AT-kernel.org>, Geliang Tang <geliang-AT-kernel.org>
Archive-link:  Article

This series is a preparation work for future in-kernel MPTCP sockets
usage. Here, two interfaces are implemented: read_sock and splice_read.
As a result of this series, splice() with MPTCP sockets -- which was
already supported -- is now improved.

- Patches 1-2: .read_sock implementation

- Patches 3-4: .splice_read implementation

- Patches 5-6: validate splice() support with MPTCP sockets.

Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
Geliang Tang (6):
      mptcp: add eat_recv_skb helper
      mptcp: implement .read_sock
      tcp: export tcp_splice_state
      mptcp: implement .splice_read
      selftests: mptcp: add splice io mode
      selftests: mptcp: connect: cover splice mode

 include/net/tcp.h                                  |  11 ++
 net/ipv4/tcp.c                                     |  13 +-
 net/mptcp/protocol.c                               | 215 ++++++++++++++++++++-
 tools/testing/selftests/net/mptcp/Makefile         |   1 +
 tools/testing/selftests/net/mptcp/mptcp_connect.c  |  63 +++++-
 .../selftests/net/mptcp/mptcp_connect_splice.sh    |   5 +
 6 files changed, 289 insertions(+), 19 deletions(-)
---
base-commit: e75e408dc524ba32b3bd66e89d2ba1e337877bfa
change-id: 20260129-net-next-mptcp-splice-62db4a1a9c52

Best regards,
-- 
Matthieu Baerts (NGI0) <matttbe@kernel.org>




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds