[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221025181526.80400-1-kuniyu@amazon.com>
Date: Tue, 25 Oct 2022 11:15:26 -0700
From: Kuniyuki Iwashima <kuniyu@...zon.com>
To: <edumazet@...gle.com>
CC: <davem@...emloft.net>, <eric.dumazet@...il.com>, <kuba@...nel.org>,
<kuniyu@...zon.com>, <mathew.j.martineau@...ux.intel.com>,
<matthieu.baerts@...sares.net>, <netdev@...r.kernel.org>,
<pabeni@...hat.com>, <syzkaller@...glegroups.com>
Subject: Re: [PATCH net-next] mptcp: fix tracking issue in mptcp_subflow_create_socket()
From: Eric Dumazet <edumazet@...gle.com>
Date: Tue, 25 Oct 2022 18:05:46 +0000
> My recent patch missed that mptcp_subflow_create_socket()
> was creating a 'kernel' socket, then converted it to 'user' socket.
>
> Fixes: 0cafd77dcd03 ("net: add a refcount tracker for kernel sockets")
> Reported-by: syzbot <syzkaller@...glegroups.com>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@...zon.com>
I missed that, thanks for the fix!
> Cc: Mat Martineau <mathew.j.martineau@...ux.intel.com>
> Cc: Matthieu Baerts <matthieu.baerts@...sares.net>
> Cc: Kuniyuki Iwashima <kuniyu@...zon.com>
> ---
> net/mptcp/subflow.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c
> index 07dd23d0fe04ac37f4cc66c0c21d4d41f50fb3f4..120f792fda9764271f020771b36d27c6e44d8618 100644
> --- a/net/mptcp/subflow.c
> +++ b/net/mptcp/subflow.c
> @@ -1595,7 +1595,9 @@ int mptcp_subflow_create_socket(struct sock *sk, struct socket **new_sock)
>
> /* kernel sockets do not by default acquire net ref, but TCP timer
> * needs it.
> + * Update ns_tracker to current stack trace and refcounted tracker.
> */
> + __netns_tracker_free(net, &sf->sk->ns_tracker, false);
> sf->sk->sk_net_refcnt = 1;
> get_net_track(net, &sf->sk->ns_tracker, GFP_KERNEL);
> sock_inuse_add(net, 1);
> --
> 2.38.0.135.g90850a2211-goog
Powered by blists - more mailing lists