diff options
author | Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com> | 2012-06-27 22:57:49 -0400 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2012-06-29 07:04:16 -0400 |
commit | 4009e18851ea555959c6017d848983b3d60bf667 (patch) | |
tree | e1d3b58b09f7ce3d5107347848bfc1aa02b9a6af /net | |
parent | d31f4d448f7671dc3e6a7a1c92a4c085a36058bb (diff) |
netfilter: nfnetlink: fix missing rcu_read_unlock in nfnetlink_rcv_msg
Bug added in commit 6b75e3e8d664a9a (netfilter: nfnetlink: add RCU in
nfnetlink_rcv_msg())
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/netfilter/nfnetlink.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/netfilter/nfnetlink.c b/net/netfilter/nfnetlink.c index 3e797d1fcb94..791d56bbd74a 100644 --- a/net/netfilter/nfnetlink.c +++ b/net/netfilter/nfnetlink.c | |||
@@ -169,8 +169,10 @@ replay: | |||
169 | 169 | ||
170 | err = nla_parse(cda, ss->cb[cb_id].attr_count, | 170 | err = nla_parse(cda, ss->cb[cb_id].attr_count, |
171 | attr, attrlen, ss->cb[cb_id].policy); | 171 | attr, attrlen, ss->cb[cb_id].policy); |
172 | if (err < 0) | 172 | if (err < 0) { |
173 | rcu_read_unlock(); | ||
173 | return err; | 174 | return err; |
175 | } | ||
174 | 176 | ||
175 | if (nc->call_rcu) { | 177 | if (nc->call_rcu) { |
176 | err = nc->call_rcu(net->nfnl, skb, nlh, | 178 | err = nc->call_rcu(net->nfnl, skb, nlh, |