mptcp: introduce 'sk' to replace 'sock->sk' in mptcp_listen()
[ Upstream commit cfdcfeed6449d702825d249cb85346ecf56236fc ] 'sock->sk' is used frequently in mptcp_listen(). Therefore, we can introduce the 'sk' and replace 'sock->sk' with it. Acked-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Menglong Dong <imagedong@tencent.com> Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> Stable-dep-of: 0226436acf24 ("mptcp: do not rely on implicit state check in mptcp_listen()") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
cde7f2fd63
commit
fbe9fa195e
@ -3746,12 +3746,13 @@ static int mptcp_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
|
|||||||
static int mptcp_listen(struct socket *sock, int backlog)
|
static int mptcp_listen(struct socket *sock, int backlog)
|
||||||
{
|
{
|
||||||
struct mptcp_sock *msk = mptcp_sk(sock->sk);
|
struct mptcp_sock *msk = mptcp_sk(sock->sk);
|
||||||
|
struct sock *sk = sock->sk;
|
||||||
struct socket *ssock;
|
struct socket *ssock;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
pr_debug("msk=%p", msk);
|
pr_debug("msk=%p", msk);
|
||||||
|
|
||||||
lock_sock(sock->sk);
|
lock_sock(sk);
|
||||||
ssock = __mptcp_nmpc_socket(msk);
|
ssock = __mptcp_nmpc_socket(msk);
|
||||||
if (!ssock) {
|
if (!ssock) {
|
||||||
err = -EINVAL;
|
err = -EINVAL;
|
||||||
@ -3759,16 +3760,16 @@ static int mptcp_listen(struct socket *sock, int backlog)
|
|||||||
}
|
}
|
||||||
|
|
||||||
mptcp_token_destroy(msk);
|
mptcp_token_destroy(msk);
|
||||||
inet_sk_state_store(sock->sk, TCP_LISTEN);
|
inet_sk_state_store(sk, TCP_LISTEN);
|
||||||
sock_set_flag(sock->sk, SOCK_RCU_FREE);
|
sock_set_flag(sk, SOCK_RCU_FREE);
|
||||||
|
|
||||||
err = ssock->ops->listen(ssock, backlog);
|
err = ssock->ops->listen(ssock, backlog);
|
||||||
inet_sk_state_store(sock->sk, inet_sk_state_load(ssock->sk));
|
inet_sk_state_store(sk, inet_sk_state_load(ssock->sk));
|
||||||
if (!err)
|
if (!err)
|
||||||
mptcp_copy_inaddrs(sock->sk, ssock->sk);
|
mptcp_copy_inaddrs(sk, ssock->sk);
|
||||||
|
|
||||||
unlock:
|
unlock:
|
||||||
release_sock(sock->sk);
|
release_sock(sk);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user