From: David S. Miller Date: Wed, 31 Mar 2021 00:42:23 +0000 (-0700) Subject: Merge branch 'mptcp-subflow-disconnected' X-Git-Tag: v5.13-rc1~94^2~282 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=65550f03e98b4dd9f5050ee8c463f30cae95ae90;p=thirdparty%2Flinux.git Merge branch 'mptcp-subflow-disconnected' Mat Martineau says: ==================== MPTCP: Allow initial subflow to be disconnected An MPTCP connection is aggregated from multiple TCP subflows, and can involve multiple IP addresses on either peer. The addresses used in the initial subflow connection are assigned address id 0 on each side of the link. More addresses can be added and shared with the peer using address IDs of 1 or larger. MPTCP in Linux shares non-zero address IDs across all MPTCP connections in a net namespace, which allows userspace to manage subflow connections across a number of sockets. However, this makes the address with id 0 a special case, since the IP address associated with id 0 is potentially different for each socket. This patch set allows the initial subflow to be disconnected when userspace specifies an address to remove using both id 0 and an IP address, or when the peer sends an RM_ADDR for id 0. Patches 1 and 3 implement the change for requests from the peer and userspace, respectively. Patch 2 consolidates some code for disconnecting subflows. Patches 4-6 update the self tests to cover removal of subflows using address id 0. ==================== Signed-off-by: David S. Miller --- 65550f03e98b4dd9f5050ee8c463f30cae95ae90