mptcp: never shrink offered window
authorPaolo Abeni <pabeni@redhat.com>
Wed, 4 May 2022 21:54:07 +0000 (14:54 -0700)
committerJakub Kicinski <kuba@kernel.org>
Fri, 6 May 2022 02:00:15 +0000 (19:00 -0700)
commitf3589be0c420a3137e5902d15705ced6a36f3f43
tree979fd53649b562923da3d0f70013f98948c62b0f
parentea66758c1795cef81dc59cd5240e9d0f5c5207cf
mptcp: never shrink offered window

As per RFC, the offered MPTCP-level window should never shrink.
While we currently track the right edge, we don't enforce the
above constraint on the wire.
Additionally, concurrent xmit on different subflows can end-up in
erroneous right edge update.
Address the above explicitly updating the announced window and
protecting the update with an additional atomic operation (sic)

Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/mptcp/options.c
net/mptcp/protocol.c
net/mptcp/protocol.h