[PATCH net-next 00/13] mptcp: New features and cleanup

Mat Martineau posted 13 patches 2 weeks, 4 days ago
Failed in applying to current master (apply log)
net/mptcp/options.c                           | 101 ++++--
net/mptcp/pm.c                                |  34 +-
net/mptcp/pm_netlink.c                        | 197 ++++++-----
net/mptcp/protocol.c                          | 307 ++++++++++--------
net/mptcp/protocol.h                          |  63 ++--
net/mptcp/sockopt.c                           |  24 +-
net/mptcp/subflow.c                           |  10 +-
net/mptcp/token.c                             |   1 +
tools/testing/selftests/net/mptcp/config      |   1 +
.../selftests/net/mptcp/mptcp_connect.c       | 148 +++++++--
.../selftests/net/mptcp/mptcp_connect.sh      |  39 ++-
.../testing/selftests/net/mptcp/mptcp_join.sh |  83 ++++-
12 files changed, 683 insertions(+), 325 deletions(-)

[PATCH net-next 00/13] mptcp: New features and cleanup

Posted by Mat Martineau 2 weeks, 4 days ago
These patches have been tested in the MPTCP tree for a longer than usual
time (thanks to holiday schedules), and are ready for the net-next
branch. Changes include feature updates, small fixes, refactoring, and
some selftest changes.

Patch 1 fixes an OUTQ ioctl issue with TCP fallback sockets.

Patches 2, 3, and 6 add support of the MPTCP fastclose option (quick
shutdown of the full MPTCP connection, similar to TCP RST in regular
TCP), and a related self test.

Patch 4 cleans up some accept and poll code that is no longer needed
after the fastclose changes.

Patch 5 add userspace disconnect using AF_UNSPEC, which is used when
testing fastclose and makes the MPTCP socket's handling of AF_UNSPEC in
connect() more TCP-like.

Patches 7-11 refactor subflow creation to make better use of multiple
local endpoints and to better handle individual connection failures when
creating multiple subflows. Includes self test updates.

Patch 12 cleans up the way subflows are added to the MPTCP connection
list, eliminating the need for calls throughout the MPTCP code that had
to check the intermediate "join list" for entries to shift over to the
main "connection list".

Patch 13 refactors the MPTCP release_cb flags to use separate storage
for values only accessed with the socket lock held (no atomic ops
needed), and for values that need atomic operations.


Paolo Abeni (13):
  mptcp: keep snd_una updated for fallback socket
  mptcp: implement fastclose xmit path
  mptcp: full disconnect implementation
  mptcp: cleanup accept and poll
  mptcp: implement support for user-space disconnect
  selftests: mptcp: add disconnect tests
  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                           | 101 ++++--
 net/mptcp/pm.c                                |  34 +-
 net/mptcp/pm_netlink.c                        | 197 ++++++-----
 net/mptcp/protocol.c                          | 307 ++++++++++--------
 net/mptcp/protocol.h                          |  63 ++--
 net/mptcp/sockopt.c                           |  24 +-
 net/mptcp/subflow.c                           |  10 +-
 net/mptcp/token.c                             |   1 +
 tools/testing/selftests/net/mptcp/config      |   1 +
 .../selftests/net/mptcp/mptcp_connect.c       | 148 +++++++--
 .../selftests/net/mptcp/mptcp_connect.sh      |  39 ++-
 .../testing/selftests/net/mptcp/mptcp_join.sh |  83 ++++-
 12 files changed, 683 insertions(+), 325 deletions(-)


base-commit: 710ad98c363a66a0cd8526465426c5c5f8377ee0
-- 
2.34.1


Re: [PATCH net-next 00/13] mptcp: New features and cleanup

Posted by patchwork-bot+netdevbpf@kernel.org 2 weeks, 3 days ago
Hello:

This series was applied to netdev/net-next.git (master)
by David S. Miller <davem@davemloft.net>:

On Thu,  6 Jan 2022 16:20:13 -0800 you wrote:
> These patches have been tested in the MPTCP tree for a longer than usual
> time (thanks to holiday schedules), and are ready for the net-next
> branch. Changes include feature updates, small fixes, refactoring, and
> some selftest changes.
> 
> Patch 1 fixes an OUTQ ioctl issue with TCP fallback sockets.
> 
> [...]

Here is the summary with links:
  - [net-next,01/13] mptcp: keep snd_una updated for fallback socket
    https://git.kernel.org/netdev/net-next/c/58cd405b83b3
  - [net-next,02/13] mptcp: implement fastclose xmit path
    https://git.kernel.org/netdev/net-next/c/f284c0c77321
  - [net-next,03/13] mptcp: full disconnect implementation
    https://git.kernel.org/netdev/net-next/c/b29fcfb54cd7
  - [net-next,04/13] mptcp: cleanup accept and poll
    https://git.kernel.org/netdev/net-next/c/71ba088ce0aa
  - [net-next,05/13] mptcp: implement support for user-space disconnect
    https://git.kernel.org/netdev/net-next/c/3d1d6d66e156
  - [net-next,06/13] selftests: mptcp: add disconnect tests
    https://git.kernel.org/netdev/net-next/c/05be5e273c84
  - [net-next,07/13] mptcp: fix per socket endpoint accounting
    https://git.kernel.org/netdev/net-next/c/f7d6a237d742
  - [net-next,08/13] mptcp: clean-up MPJ option writing
    https://git.kernel.org/netdev/net-next/c/71b077e48377
  - [net-next,09/13] mptcp: keep track of local endpoint still available for each msk
    https://git.kernel.org/netdev/net-next/c/86e39e04482b
  - [net-next,10/13] mptcp: do not block subflows creation on errors
    https://git.kernel.org/netdev/net-next/c/a88c9e496937
  - [net-next,11/13] selftests: mptcp: add tests for subflow creation failure
    https://git.kernel.org/netdev/net-next/c/46e967d187ed
  - [net-next,12/13] mptcp: cleanup MPJ subflow list handling
    https://git.kernel.org/netdev/net-next/c/3e5014909b56
  - [net-next,13/13] mptcp: avoid atomic bit manipulation when possible
    https://git.kernel.org/netdev/net-next/c/e9d09baca676

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html