From: Paolo Abeni <pabeni@redhat.com>
To: mptcp@lists.linux.dev
Subject: [PATCH v6 mptcp-next 0/7] mptcp: improve subflow creation on errors
Date: Tue, 14 Dec 2021 17:58:50 +0100 [thread overview]
Message-ID: <cover.1639500873.git.pabeni@redhat.com> (raw)
This iteration tries to add address the feedback on v5, namely
test counter update and locking in write_options. The latter
required quite significant changes in patch 5/7.
Additionally the series now includes the pending cleanup, as
they depends on the previous patches. No changes there WRT the
previous iteration.
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
Paolo Abeni (7):
mptcp: fix per socket endpoint accounting.
mptcp: clean-up MPJ option writing.
mptcp: keep track of local endpoint still available for each msk
mptcp: do not block subflows creation on errors
selftests: mptcp: add tests for subflow creation failure
mptcp: cleanup MPJ subflow list handling
mptcp: avoid atomic bit manipulation when possible
net/mptcp/options.c | 44 ++--
net/mptcp/pm.c | 24 ++-
net/mptcp/pm_netlink.c | 188 +++++++++++-------
net/mptcp/protocol.c | 158 +++++++--------
net/mptcp/protocol.h | 46 +++--
net/mptcp/sockopt.c | 24 +--
net/mptcp/subflow.c | 9 +-
tools/testing/selftests/net/mptcp/config | 1 +
.../testing/selftests/net/mptcp/mptcp_join.sh | 83 +++++++-
9 files changed, 350 insertions(+), 227 deletions(-)
--
2.33.1
next reply other threads:[~2021-12-14 16:59 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-14 16:58 Paolo Abeni [this message]
2021-12-14 16:58 ` [PATCH v6 mptcp-next 1/7] mptcp: fix per socket endpoint accounting Paolo Abeni
2021-12-14 16:58 ` [PATCH v6 mptcp-next 2/7] mptcp: clean-up MPJ option writing Paolo Abeni
2021-12-14 16:58 ` [PATCH v6 mptcp-next 3/7] mptcp: keep track of local endpoint still available for each msk Paolo Abeni
2021-12-14 16:58 ` [PATCH v6 mptcp-next 4/7] mptcp: do not block subflows creation on errors Paolo Abeni
2021-12-14 16:58 ` [PATCH v6 mptcp-next 5/7] selftests: mptcp: add tests for subflow creation failure Paolo Abeni
2021-12-15 1:16 ` Mat Martineau
2021-12-14 16:58 ` [PATCH v6 mptcp-next 6/7] mptcp: cleanup MPJ subflow list handling Paolo Abeni
2021-12-14 16:58 ` [PATCH v6 mptcp-next 7/7] mptcp: avoid atomic bit manipulation when possible Paolo Abeni
2021-12-15 15:10 ` Paolo Abeni
2021-12-15 15:59 ` Matthieu Baerts
2021-12-15 1:28 ` [PATCH v6 mptcp-next 0/7] mptcp: improve subflow creation on errors Mat Martineau
2021-12-15 16:00 ` Matthieu Baerts
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1639500873.git.pabeni@redhat.com \
--to=pabeni@redhat.com \
--cc=mptcp@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.