[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <255c4841-f8d2-062f-f4ba-871c91b92e1b@cumulusnetworks.com>
Date: Mon, 12 Sep 2016 08:35:31 -0600
From: David Ahern <dsa@...ulusnetworks.com>
To: Christophe JAILLET <christophe.jaillet@...adoo.fr>,
davem@...emloft.net, kuznet@....inr.ac.ru, jmorris@...ei.org,
yoshfuji@...ux-ipv6.org, kaber@...sh.net
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel-janitors@...r.kernel.org
Subject: Re: [PATCH] net: inet: diag: Fix an error handling
On 9/12/16 12:02 AM, Christophe JAILLET wrote:
> diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c
> index abfbe492ebfe..795af25cf84c 100644
> --- a/net/ipv4/inet_diag.c
> +++ b/net/ipv4/inet_diag.c
> @@ -1134,7 +1134,6 @@ int inet_diag_handler_get_info(struct sk_buff *skb, struct sock *sk)
>
> handler = inet_diag_lock_handler(sk->sk_protocol);
> if (IS_ERR(handler)) {
> - inet_diag_unlock_handler(handler);
> nlmsg_cancel(skb, nlh);
> return PTR_ERR(handler);
> }
>
That call is needed. inet_diag_unlock_handler does not operate on the input arg but a global mutex. Perhaps a better patch is to change inet_diag_unlock_handler() to a void.
Powered by blists - more mailing lists