netfilter: nfnetlink: remove static declaration from err_list
authorLiping Zhang <zlpnobody@gmail.com>
Sat, 18 Feb 2017 02:35:47 +0000 (10:35 +0800)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 21 Feb 2017 12:45:47 +0000 (13:45 +0100)
Otherwise, different subsys will race to access the err_list, with holding
the different nfnl_lock(subsys_id).

But this will not happen now, since ->call_batch is only implemented by
nftables, so the err_list is protected by nfnl_lock(NFNL_SUBSYS_NFTABLES).

Signed-off-by: Liping Zhang <zlpnobody@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nfnetlink.c

index a09fa9fd8f3d98b2f3dd8479b861db4e71b37cf5..6fa448478cbaddbe5bcd933972f2842d899024fb 100644 (file)
@@ -279,7 +279,7 @@ static void nfnetlink_rcv_batch(struct sk_buff *skb, struct nlmsghdr *nlh,
        struct net *net = sock_net(skb->sk);
        const struct nfnetlink_subsystem *ss;
        const struct nfnl_callback *nc;
-       static LIST_HEAD(err_list);
+       LIST_HEAD(err_list);
        u32 status;
        int err;