mirror of
https://github.com/torvalds/linux
synced 2024-09-06 18:01:05 +00:00
mptcp: ignore notsent_lowat setting at the subflow level
Any latency related tuning taking action at the subflow level does not really affect the user-space, as only the main MPTCP socket is relevant. Anyway any limiting setting may foul the MPTCP scheduler, not being able to fully use the subflow-level cwin, leading to very poor b/w usage. Enforce notsent_lowat to be a no-op on every subflow. Note that TCP_NOTSENT_LOWAT is currently not supported, and properly dealing with that will require more invasive changes. Reviewed-by: Mat Martineau <martineau@kernel.org> Signed-off-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Mat Martineau <martineau@kernel.org> Link: https://lore.kernel.org/r/20231023-send-net-next-20231023-2-v1-8-9dc60939d371@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
a1ab24e5fc
commit
9fdc779331
|
@ -1452,6 +1452,12 @@ void mptcp_sockopt_sync_locked(struct mptcp_sock *msk, struct sock *ssk)
|
|||
|
||||
ssk->sk_rcvlowat = 0;
|
||||
|
||||
/* subflows must ignore any latency-related settings: will not affect
|
||||
* the user-space - only the msk is relevant - but will foul the
|
||||
* mptcp scheduler
|
||||
*/
|
||||
tcp_sk(ssk)->notsent_lowat = UINT_MAX;
|
||||
|
||||
if (READ_ONCE(subflow->setsockopt_seq) != msk->setsockopt_seq) {
|
||||
sync_socket_options(msk, ssk);
|
||||
|
||||
|
|
Loading…
Reference in a new issue