diff options
| author | Paolo Abeni <[email protected]> | 2024-02-08 18:03:50 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2024-02-12 10:08:12 +0000 |
| commit | 013e3179dbd2bc756ce1dd90354abac62f65b739 (patch) | |
| tree | 44c1cc3b5496e7009ff16f790979ac96d1c4c027 /net/unix/garbage.c | |
| parent | mptcp: drop the push_pending field (diff) | |
| download | kernel-013e3179dbd2bc756ce1dd90354abac62f65b739.tar.gz kernel-013e3179dbd2bc756ce1dd90354abac62f65b739.zip | |
mptcp: fix rcv space initialization
mptcp_rcv_space_init() is supposed to happen under the msk socket
lock, but active msk socket does that without such protection.
Leverage the existing mptcp_propagate_state() helper to that extent.
We need to ensure mptcp_rcv_space_init will happen before
mptcp_rcv_space_adjust(), and the release_cb does not assure that:
explicitly check for such condition.
While at it, move the wnd_end initialization out of mptcp_rcv_space_init(),
it never belonged there.
Note that the race does not produce ill effect in practice, but
change allows cleaning-up and defying better the locking model.
Fixes: a6b118febbab ("mptcp: add receive buffer auto-tuning")
Cc: [email protected]
Signed-off-by: Paolo Abeni <[email protected]>
Reviewed-by: Mat Martineau <[email protected]>
Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/unix/garbage.c')
0 files changed, 0 insertions, 0 deletions
