[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210415234502.224225-1-mathew.j.martineau@linux.intel.com>
Date: Thu, 15 Apr 2021 16:44:49 -0700
From: Mat Martineau <mathew.j.martineau@...ux.intel.com>
To: netdev@...r.kernel.org
Cc: Mat Martineau <mathew.j.martineau@...ux.intel.com>,
davem@...emloft.net, kuba@...nel.org, matthieu.baerts@...sares.net,
mptcp@...ts.linux.dev
Subject: [PATCH net-next 00/13] mptcp: Improve socket option handling
MPTCP sockets have previously had limited socket option support. The
architecture of MPTCP sockets (one userspace-facing MPTCP socket that
manages one or more in-kernel TCP subflow sockets) adds complexity for
passing options through to lower levels. This patch set adds MPTCP
support for socket options commonly used with TCP.
Patch 1 reverts an interim socket option fix (a socket option blocklist)
that was merged in the net tree for v5.12.
Patch 2 moves the socket option code to a separate file, with no
functional changes.
Patch 3 adds an allowlist for socket options that are known to function
with MPTCP. Later patches in this set add more allowed options.
Patches 4 and 5 add infrastructure for syncing MPTCP-level options with
the TCP subflows.
Patches 6-12 add support for specific socket options.
Patch 13 adds a socket option self test.
Florian Westphal (10):
mptcp: add skeleton to sync msk socket options to subflows
mptcp: tag sequence_seq with socket state
mptcp: setsockopt: handle SO_KEEPALIVE and SO_PRIORITY
mptcp: setsockopt: handle receive/send buffer and device bind
mptcp: setsockopt: support SO_LINGER
mptcp: setsockopt: add SO_MARK support
mptcp: setsockopt: add SO_INCOMING_CPU
mptcp: setsockopt: SO_DEBUG and no-op options
mptcp: sockopt: add TCP_CONGESTION and TCP_INFO
selftests: mptcp: add packet mark test case
Matthieu Baerts (1):
mptcp: revert "mptcp: forbit mcast-related sockopt on MPTCP sockets"
Paolo Abeni (2):
mptcp: move sockopt function into a new file
mptcp: only admit explicitly supported sockopt
net/mptcp/Makefile | 2 +-
net/mptcp/protocol.c | 219 ++---
net/mptcp/protocol.h | 16 +
net/mptcp/sockopt.c | 756 ++++++++++++++++++
net/mptcp/subflow.c | 5 +
tools/testing/selftests/net/mptcp/Makefile | 2 +-
.../selftests/net/mptcp/mptcp_connect.c | 23 +-
.../selftests/net/mptcp/mptcp_sockopt.sh | 276 +++++++
8 files changed, 1122 insertions(+), 177 deletions(-)
create mode 100644 net/mptcp/sockopt.c
create mode 100755 tools/testing/selftests/net/mptcp/mptcp_sockopt.sh
base-commit: 3a1aa533f7f676aad68f8dbbbba10b9502903770
--
2.31.1
Powered by blists - more mailing lists