diff options
| author | Matthieu Baerts (NGI0) <[email protected]> | 2024-02-23 16:14:13 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2024-02-27 02:41:55 +0000 |
| commit | 5b49c41ac8f27aa3a63a1712b1f54f91015c18f2 (patch) | |
| tree | 44bd17d29d7801a6e2d18a075894ec152f0bea32 /net/mptcp/options.c | |
| parent | selftests: mptcp: rm subflow with v4/v4mapped addr (diff) | |
| download | kernel-5b49c41ac8f27aa3a63a1712b1f54f91015c18f2.tar.gz kernel-5b49c41ac8f27aa3a63a1712b1f54f91015c18f2.zip | |
mptcp: avoid printing warning once on client side
After the 'Fixes' commit mentioned below, the client side might print
the following warning once when a subflow is fully established at the
reception of any valid additional ack:
MPTCP: bogus mpc option on established client sk
That's a normal situation, and no warning should be printed for that. We
can then skip the check when the label is used.
Fixes: e4a0fa47e816 ("mptcp: corner case locking for rx path fields initialization")
Cc: [email protected]
Suggested-by: Paolo Abeni <[email protected]>
Reviewed-by: Mat Martineau <[email protected]>
Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>
Link: https://lore.kernel.org/r/20240223-upstream-net-20240223-misc-fixes-v1-3-162e87e48497@kernel.org
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'net/mptcp/options.c')
| -rw-r--r-- | net/mptcp/options.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mptcp/options.c b/net/mptcp/options.c index e3e96a49f922..63fc0758c22d 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -981,10 +981,10 @@ static bool check_fully_established(struct mptcp_sock *msk, struct sock *ssk, if (mp_opt->deny_join_id0) WRITE_ONCE(msk->pm.remote_deny_join_id0, true); -set_fully_established: if (unlikely(!READ_ONCE(msk->pm.server_side))) pr_warn_once("bogus mpc option on established client sk"); +set_fully_established: mptcp_data_lock((struct sock *)msk); __mptcp_subflow_fully_established(msk, subflow, mp_opt); mptcp_data_unlock((struct sock *)msk); |
