[PATCH mptcp-next 0/4] mptcp: just another receive path refactor

Paolo Abeni posted 4 patches 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/cover.1659107989.git.pabeni@redhat.com
There is a newer version of this series
Maintainers: Paolo Abeni <pabeni@redhat.com>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Matthieu Baerts <matthieu.baerts@tessares.net>, Mat Martineau <mathew.j.martineau@linux.intel.com>, David Ahern <dsahern@kernel.org>, Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>, "David S. Miller" <davem@davemloft.net>
include/net/mptcp.h  |   2 +
net/ipv4/tcp.c       |   3 +
net/mptcp/options.c  |   1 -
net/mptcp/protocol.c | 220 +++++++++++--------------------------------
net/mptcp/protocol.h |  12 ++-
5 files changed, 69 insertions(+), 169 deletions(-)
[PATCH mptcp-next 0/4] mptcp: just another receive path refactor
Posted by Paolo Abeni 2 months ago
This is a refresh and rebase of an already shared work:

https://lore.kernel.org/mptcp/cover.1621963632.git.pabeni@redhat.com/
[1]

The motiviation for refreshing this is:

https://lore.kernel.org/mptcp/YtVhyGSsv1CWvPz4@xsang-OptiPlex-9020/

specifically it looks like that properly attaching mem_cg to the
msk socket would be (much?) easier if the RX path and the fwd memory
allocation would be under msk socket lock protection.

The first 2 patches are proably worthy even without the refactor,
but specifically the 2nd one is required to get a good mptcp-level
acking behavior when we move the rx under the socket lock.

The 3rd patch does the real work, and the 4th is a follow-up cleanup.

Back at [1], I measured relevant performance regressions in some
specific cases. I've done the same test here and I now see little to
noise changes. I guess that is mostly due to the better acking
strategy already introduce with commit 949dfdcf343c ("Merge branch 
'mptcp-improve-mptcp-level-window-tracking'") and refined here.

Paolo Abeni (4):
  mptcp: move RCVPRUNE event later
  mptcp: more accurate receive buffer updates
  mptcp: move msk input path under full msk socket lock
  mptcp: use common helper for rmem memory accounting

 include/net/mptcp.h  |   2 +
 net/ipv4/tcp.c       |   3 +
 net/mptcp/options.c  |   1 -
 net/mptcp/protocol.c | 220 +++++++++++--------------------------------
 net/mptcp/protocol.h |  12 ++-
 5 files changed, 69 insertions(+), 169 deletions(-)

-- 
2.35.3