[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160115224233.GA20767@breakpoint.cc>
Date: Fri, 15 Jan 2016 23:42:33 +0100
From: Florian Westphal <fw@...len.de>
To: Sebastian Pöhn <sebastian.poehn@...il.com>
Cc: netdev@...r.kernel.org, netfilter-devel@...r.kernel.org
Subject: Re: nf_conntrack_h323: Fix locking in process_urq
Sebastian Pöhn <sebastian.poehn@...il.com> wrote:
[ CC netfilter-devel ]
> nf_ct_remove_expectations has to be called under nf_conntrack_expect_lock
But nf_ct_remove_expectations grabs that lock?
Added in:
commit ca7433df3a672efc88e08222cfa4b3aa965ca324
Author: Jesper Dangaard Brouer <brouer@...hat.com>
netfilter: conntrack: seperate expect locking from nf_conntrack_lock
> diff --git a/net/netfilter/nf_conntrack_h323_main.c b/net/netfilter/nf_conntrack_h323_main.c
> index 9511af0..d477375 100644
> --- a/net/netfilter/nf_conntrack_h323_main.c
> +++ b/net/netfilter/nf_conntrack_h323_main.c
> @@ -1518,7 +1518,9 @@ static int process_urq(struct sk_buff *skb, struct nf_conn *ct,
> }
>
> /* Clear old expect */
> + spin_lock_bh(&nf_conntrack_expect_lock);
> nf_ct_remove_expectations(ct);
... so I'd expect deadlock.
Powered by blists - more mailing lists