mptcp: bypass in-kernel PM restrictions for non-kernel PMs
authorKishen Maloor <kishen.maloor@intel.com>
Mon, 2 May 2022 20:52:31 +0000 (13:52 -0700)
committerJakub Kicinski <kuba@kernel.org>
Tue, 3 May 2022 23:54:54 +0000 (16:54 -0700)
commit4d25247d3ae486e6e4c59394487fd01523628234
treebb20c46b830aba2d84fea4fb579be10da7d96f43
parent2b68abf933654eb750ba963e46bd9cd2d8677dce
mptcp: bypass in-kernel PM restrictions for non-kernel PMs

Current limits on the # of addresses/subflows must apply only to
in-kernel PM managed sockets. Thus this change removes such
restrictions on connections overseen by non-kernel (e.g. userspace)
PMs. This change also ensures that the kernel does not record stats
inside struct mptcp_pm_data updated along kernel code paths when exercised
via non-kernel PMs.

Additionally, address announcements are acknolwedged and subflow
requests are honored only when it's deemed that a userspace path
manager is active at the time.

Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Kishen Maloor <kishen.maloor@intel.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/mptcp/pm.c
net/mptcp/pm_netlink.c
net/mptcp/protocol.h
net/mptcp/subflow.c