mptcp: get sk from msk directly
authorGeliang Tang <geliang.tang@suse.com>
Thu, 10 Nov 2022 23:23:20 +0000 (15:23 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 12 Nov 2022 05:19:47 +0000 (21:19 -0800)
Use '(struct sock *)msk' to get 'sk' from 'msk' in a more direct way
instead of using '&msk->sk.icsk_inet.sk'.

Reviewed-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/mptcp/pm_userspace.c
net/mptcp/protocol.c
net/mptcp/sockopt.c

index 9e82250..5cb65f0 100644 (file)
@@ -291,7 +291,7 @@ int mptcp_nl_cmd_sf_create(struct sk_buff *skb, struct genl_info *info)
                goto create_err;
        }
 
-       sk = &msk->sk.icsk_inet.sk;
+       sk = (struct sock *)msk;
        lock_sock(sk);
 
        err = __mptcp_subflow_connect(sk, &addr_l, &addr_r);
@@ -403,7 +403,7 @@ int mptcp_nl_cmd_sf_destroy(struct sk_buff *skb, struct genl_info *info)
                goto destroy_err;
        }
 
-       sk = &msk->sk.icsk_inet.sk;
+       sk = (struct sock *)msk;
        lock_sock(sk);
        ssk = mptcp_nl_find_ssk(msk, &addr_l, &addr_r);
        if (ssk) {
index 5a34478..3796d1b 100644 (file)
@@ -2454,7 +2454,7 @@ static bool mptcp_check_close_timeout(const struct sock *sk)
 static void mptcp_check_fastclose(struct mptcp_sock *msk)
 {
        struct mptcp_subflow_context *subflow, *tmp;
-       struct sock *sk = &msk->sk.icsk_inet.sk;
+       struct sock *sk = (struct sock *)msk;
 
        if (likely(!READ_ONCE(msk->rcv_fastclose)))
                return;
@@ -2616,7 +2616,7 @@ static void mptcp_do_fastclose(struct sock *sk)
 static void mptcp_worker(struct work_struct *work)
 {
        struct mptcp_sock *msk = container_of(work, struct mptcp_sock, work);
-       struct sock *sk = &msk->sk.icsk_inet.sk;
+       struct sock *sk = (struct sock *)msk;
        unsigned long fail_tout;
        int state;
 
index f85e9bb..f62f648 100644 (file)
@@ -987,7 +987,7 @@ static int mptcp_getsockopt_tcpinfo(struct mptcp_sock *msk, char __user *optval,
                                    int __user *optlen)
 {
        struct mptcp_subflow_context *subflow;
-       struct sock *sk = &msk->sk.icsk_inet.sk;
+       struct sock *sk = (struct sock *)msk;
        unsigned int sfcount = 0, copied = 0;
        struct mptcp_subflow_data sfd;
        char __user *infoptr;
@@ -1078,8 +1078,8 @@ static void mptcp_get_sub_addrs(const struct sock *sk, struct mptcp_subflow_addr
 static int mptcp_getsockopt_subflow_addrs(struct mptcp_sock *msk, char __user *optval,
                                          int __user *optlen)
 {
-       struct sock *sk = &msk->sk.icsk_inet.sk;
        struct mptcp_subflow_context *subflow;
+       struct sock *sk = (struct sock *)msk;
        unsigned int sfcount = 0, copied = 0;
        struct mptcp_subflow_data sfd;
        char __user *addrptr;