mptcp: pm: register in-kernel and userspace PM
authorGeliang Tang <tanggeliang@kylinos.cn>
Thu, 13 Mar 2025 10:20:56 +0000 (11:20 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 20 Mar 2025 09:14:48 +0000 (10:14 +0100)
commit770170b418106fe152160510715fe5f8e601509c
tree25d1d60eb1e9305e8352bdec1452b8a843b79099
parent1305b0c22eca7373910f30ec31912796617b7121
mptcp: pm: register in-kernel and userspace PM

This patch defines the original in-kernel netlink path manager as a
new struct mptcp_pm_ops named "mptcp_pm_kernel", and register it in
mptcp_pm_kernel_register(). And define the userspace path manager as
a new struct mptcp_pm_ops named "mptcp_pm_userspace", and register it
in mptcp_pm_init().

To ensure that there's always a valid path manager available, the default
path manager "mptcp_pm_kernel" will be skipped in mptcp_pm_unregister().

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250313-net-next-mptcp-pm-ops-intro-v1-7-f4e4a88efc50@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
net/mptcp/pm.c
net/mptcp/pm_kernel.c
net/mptcp/pm_userspace.c
net/mptcp/protocol.h