[PATCH mptcp-next v2 0/4] mptcp: improve subflow creation on errors

Paolo Abeni posted 4 patches 1 week, 4 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/cover.1637770883.git.pabeni@redhat.com
Maintainers: Daniel Borkmann <daniel@iogearbox.net>, Mat Martineau <mathew.j.martineau@linux.intel.com>, Song Liu <songliubraving@fb.com>, Shuah Khan <shuah@kernel.org>, Alexei Starovoitov <ast@kernel.org>, KP Singh <kpsingh@kernel.org>, Martin KaFai Lau <kafai@fb.com>, "David S. Miller" <davem@davemloft.net>, Yonghong Song <yhs@fb.com>, John Fastabend <john.fastabend@gmail.com>, Matthieu Baerts <matthieu.baerts@tessares.net>, Andrii Nakryiko <andrii@kernel.org>, Jakub Kicinski <kuba@kernel.org>
net/mptcp/options.c                           | 65 ++++++++++++-------
net/mptcp/pm.c                                | 29 +++++++++
net/mptcp/pm_netlink.c                        |  8 ++-
net/mptcp/protocol.c                          |  6 ++
net/mptcp/protocol.h                          |  5 +-
net/mptcp/subflow.c                           |  5 +-
tools/testing/selftests/net/mptcp/config      |  1 +
.../testing/selftests/net/mptcp/mptcp_join.sh | 65 ++++++++++++++++++-
8 files changed, 156 insertions(+), 28 deletions(-)

[PATCH mptcp-next v2 0/4] mptcp: improve subflow creation on errors

Posted by Paolo Abeni 1 week, 4 days ago
Currently when a subflow connection fails - either the TCP
connection is reset by the peer, or the MPJ handshake never
completes - the in kernel PM don't perform any further action.
Notably no additional subflow creation is attempted.

This series is aimed at improving the in-kernel path manager
behavior in the above scenario:
- each endpoint is used only once per connection (patch 2/4)
- on failure we try to move to the next subflow, if any
  (patch 3/4)

The first patch is minor cleanup, and the last patch adds
specific self-tests.

This should address/close:
https://github.com/multipath-tcp/mptcp_net-next/issues/235
https://github.com/multipath-tcp/mptcp_net-next/issues/242

@Phil: could you please have a spin in your testbed? this
should really cover your use case for good - modulo bugs

Paolo Abeni (4):
  mptcp: clean-up MPJ option writing.
  mptcp: keep track of used local endpoint
  mptcp: do not block subflows creation on errors
  selftests: mptcp: add tests for subflow creation failure

 net/mptcp/options.c                           | 65 ++++++++++++-------
 net/mptcp/pm.c                                | 29 +++++++++
 net/mptcp/pm_netlink.c                        |  8 ++-
 net/mptcp/protocol.c                          |  6 ++
 net/mptcp/protocol.h                          |  5 +-
 net/mptcp/subflow.c                           |  5 +-
 tools/testing/selftests/net/mptcp/config      |  1 +
 .../testing/selftests/net/mptcp/mptcp_join.sh | 65 ++++++++++++++++++-
 8 files changed, 156 insertions(+), 28 deletions(-)

-- 
2.33.1