[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240614105441.GA24596@breakpoint.cc>
Date: Fri, 14 Jun 2024 12:54:41 +0200
From: Florian Westphal <fw@...len.de>
To: luoxuanqiang <luoxuanqiang@...inos.cn>
Cc: edumazet@...gle.com, davem@...emloft.net, dsahern@...nel.org,
fw@...len.de, kuba@...nel.org, linux-kernel@...r.kernel.org,
netdev@...r.kernel.org, pabeni@...hat.com, kuniyu@...zon.com,
dccp@...r.kernel.org
Subject: Re: [PATCH net v2] Fix race for duplicate reqsk on identical SYN
luoxuanqiang <luoxuanqiang@...inos.cn> wrote:
> include/net/inet_connection_sock.h | 2 +-
> net/dccp/ipv4.c | 2 +-
> net/dccp/ipv6.c | 2 +-
> net/ipv4/inet_connection_sock.c | 15 +++++++++++----
> net/ipv4/tcp_input.c | 11 ++++++++++-
> 5 files changed, 24 insertions(+), 8 deletions(-)
>
> diff --git a/include/net/inet_connection_sock.h b/include/net/inet_connection_sock.h
> index 7d6b1254c92d..8773d161d184 100644
> --- a/include/net/inet_connection_sock.h
> +++ b/include/net/inet_connection_sock.h
> @@ -264,7 +264,7 @@ struct sock *inet_csk_reqsk_queue_add(struct sock *sk,
> struct request_sock *req,
> struct sock *child);
> void inet_csk_reqsk_queue_hash_add(struct sock *sk, struct request_sock *req,
> - unsigned long timeout);
> + unsigned long timeout, bool *found_dup_sk);
Nit:
I think it would be preferrable to change retval to bool rather than
bool *found_dup_sk extra arg, so one can do
bool inet_csk_reqsk_queue_hash_add(struct sock *sk, struct request_sock *req,
unsigned long timeout)
{
if (!reqsk_queue_hash_req(req, timeout))
return false;
i.e. let retval indicate wheter reqsk was inserted or not.
Patch looks good to me otherwise.
Powered by blists - more mailing lists