From: Paolo Abeni Date: Fri, 11 Aug 2023 15:57:21 +0000 (+0200) Subject: mptcp: avoid additional indirection in mptcp_poll() X-Git-Tag: v6.6.7~2079^2~127^2~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5426a4ef6455c93e76a553eda0a1811bb0bbd214;p=platform%2Fkernel%2Flinux-starfive.git mptcp: avoid additional indirection in mptcp_poll() We are going to remove the first subflow socket soon, so avoid the additional indirection at poll() time. Instead access directly the first subflow sock. No functional changes intended. Signed-off-by: Paolo Abeni Reviewed-by: Mat Martineau Signed-off-by: Matthieu Baerts Signed-off-by: David S. Miller --- diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c index d8b75fb..e89d1bf 100644 --- a/net/mptcp/protocol.c +++ b/net/mptcp/protocol.c @@ -3844,12 +3844,12 @@ static __poll_t mptcp_poll(struct file *file, struct socket *sock, state = inet_sk_state_load(sk); pr_debug("msk=%p state=%d flags=%lx", msk, state, msk->flags); if (state == TCP_LISTEN) { - struct socket *ssock = READ_ONCE(msk->subflow); + struct sock *ssk = READ_ONCE(msk->first); - if (WARN_ON_ONCE(!ssock || !ssock->sk)) + if (WARN_ON_ONCE(!ssk)) return 0; - return inet_csk_listen_poll(ssock->sk); + return inet_csk_listen_poll(ssk); } shutdown = READ_ONCE(sk->sk_shutdown);