mptcp: send ADD_ADDR echo before create subflows
authorYonglong Li <liyonglong@chinatelecom.cn>
Thu, 17 Mar 2022 22:14:44 +0000 (15:14 -0700)
committerJakub Kicinski <kuba@kernel.org>
Fri, 18 Mar 2022 21:14:09 +0000 (14:14 -0700)
commit12a18341b5c3b6b897e52e8f387ab7cd7f7b6d85
treee5211d65a596bf7c92b333a6e3e86b85adc65e0b
parent4edf21aa94ee33c75f819f2b6eb6dd52ef8a1628
mptcp: send ADD_ADDR echo before create subflows

In some corner cases, the peer handing an incoming ADD_ADDR option, can
receive a retransmitted ADD_ADDR for the same address before the subflow
creation completes.

We can avoid the above issue by generating and sending the ADD_ADDR echo
before starting the MPJ subflow connection.

This slightly changes the behaviour of the packetdrill tests as the
ADD_ADDR echo packet is sent earlier.

Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Yonglong Li <liyonglong@chinatelecom.cn>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Link: https://lore.kernel.org/r/20220317221444.426335-1-mathew.j.martineau@linux.intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/mptcp/pm_netlink.c