• Paolo Abeni's avatar
    mptcp: re-enable sndbuf autotune · 5cf92bba
    Paolo Abeni authored
    After commit 6e628cd3 ("mptcp: use mptcp release_cb for
    delayed tasks"), MPTCP never sets the flag bit SOCK_NOSPACE
    on its subflow. As a side effect, autotune never takes place,
    as it happens inside tcp_new_space(), which in turn is called
    only when the mentioned bit is set.
    
    Let's sendmsg() set the subflows NOSPACE bit when looking for
    more memory and use the subflow write_space callback to propagate
    the snd buf update and wake-up the user-space.
    
    Additionally, this allows dropping a bunch of duplicate code and
    makes the SNDBUF_LIMITED chrono relevant again for MPTCP subflows.
    
    Fixes: 6e628cd3 ("mptcp: use mptcp release_cb for delayed tasks")
    Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    5cf92bba
protocol.c 84.4 KB