Skip to content

Commit

Permalink
Revert "mptcp: add data lock for sk timers"
Browse files Browse the repository at this point in the history
This reverts commit 4293248.

Additional locks are not needed, all the touched sections
are already under mptcp socket lock protection.

Fixes: 4293248 ("mptcp: add data lock for sk timers")
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>
  • Loading branch information
Paolo Abeni authored and kuba-moo committed May 16, 2022
1 parent c43ce39 commit 0ea5374
Showing 1 changed file with 0 additions and 12 deletions.
12 changes: 0 additions & 12 deletions net/mptcp/protocol.c
Original file line number Diff line number Diff line change
Expand Up @@ -1613,10 +1613,8 @@ void __mptcp_push_pending(struct sock *sk, unsigned int flags)

out:
/* ensure the rtx timer is running */
mptcp_data_lock(sk);
if (!mptcp_timer_pending(sk))
mptcp_reset_timer(sk);
mptcp_data_unlock(sk);
if (copied)
__mptcp_check_send_data_fin(sk);
}
Expand Down Expand Up @@ -2529,10 +2527,8 @@ static void __mptcp_retrans(struct sock *sk)
reset_timer:
mptcp_check_and_set_pending(sk);

mptcp_data_lock(sk);
if (!mptcp_timer_pending(sk))
mptcp_reset_timer(sk);
mptcp_data_unlock(sk);
}

static void mptcp_mp_fail_no_response(struct mptcp_sock *msk)
Expand Down Expand Up @@ -2711,10 +2707,8 @@ void mptcp_subflow_shutdown(struct sock *sk, struct sock *ssk, int how)
} else {
pr_debug("Sending DATA_FIN on subflow %p", ssk);
tcp_send_ack(ssk);
mptcp_data_lock(sk);
if (!mptcp_timer_pending(sk))
mptcp_reset_timer(sk);
mptcp_data_unlock(sk);
}
break;
}
Expand Down Expand Up @@ -2815,10 +2809,8 @@ static void __mptcp_destroy_sock(struct sock *sk)
/* join list will be eventually flushed (with rst) at sock lock release time*/
list_splice_init(&msk->conn_list, &conn_list);

mptcp_data_lock(sk);
mptcp_stop_timer(sk);
sk_stop_timer(sk, &sk->sk_timer);
mptcp_data_unlock(sk);
msk->pm.status = 0;

/* clears msk->subflow, allowing the following loop to close
Expand Down Expand Up @@ -2880,9 +2872,7 @@ static void mptcp_close(struct sock *sk, long timeout)
__mptcp_destroy_sock(sk);
do_cancel_work = true;
} else {
mptcp_data_lock(sk);
sk_reset_timer(sk, &sk->sk_timer, jiffies + TCP_TIMEWAIT_LEN);
mptcp_data_unlock(sk);
}
release_sock(sk);
if (do_cancel_work)
Expand Down Expand Up @@ -2927,10 +2917,8 @@ static int mptcp_disconnect(struct sock *sk, int flags)
__mptcp_close_ssk(sk, ssk, subflow, MPTCP_CF_FASTCLOSE);
}

mptcp_data_lock(sk);
mptcp_stop_timer(sk);
sk_stop_timer(sk, &sk->sk_timer);
mptcp_data_unlock(sk);

if (mptcp_sk(sk)->token)
mptcp_event(MPTCP_EVENT_CLOSED, mptcp_sk(sk), NULL, GFP_KERNEL);
Expand Down

0 comments on commit 0ea5374

Please sign in to comment.