Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6
authorDavid S. Miller <davem@davemloft.net>
Fri, 28 Nov 2008 10:19:15 +0000 (02:19 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 28 Nov 2008 10:19:15 +0000 (02:19 -0800)
Conflicts:

net/netfilter/nf_conntrack_netlink.c

1  2 
net/bridge/br_netfilter.c
net/ipv4/netfilter.c
net/ipv6/netfilter.c
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_helper.c
net/netfilter/nf_conntrack_netlink.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 5f4a6516b3b6b6f935e677f774c22de1c038dccb,ccc5ef1d7573def1b5907e5a23c428377f8a8207..00e8c27130ff6ad6fa345b860948ddb8dca2bf4e
@@@ -1087,10 -1131,9 +1131,9 @@@ ctnetlink_create_conntrack(struct nlatt
  {
        struct nf_conn *ct;
        int err = -EINVAL;
-       struct nf_conn_help *help;
        struct nf_conntrack_helper *helper;
  
 -      ct = nf_conntrack_alloc(&init_net, otuple, rtuple, GFP_KERNEL);
 +      ct = nf_conntrack_alloc(&init_net, otuple, rtuple, GFP_ATOMIC);
        if (ct == NULL || IS_ERR(ct))
                return -ENOMEM;
  
@@@ -1209,17 -1294,18 +1294,18 @@@ ctnetlink_new_conntrack(struct sock *ct
                                goto out_unlock;
                        }
                        master_ct = nf_ct_tuplehash_to_ctrack(master_h);
-                       atomic_inc(&master_ct->ct_general.use);
+                       nf_conntrack_get(&master_ct->ct_general);
                }
  
 -              spin_unlock_bh(&nf_conntrack_lock);
                err = -ENOENT;
                if (nlh->nlmsg_flags & NLM_F_CREATE)
                        err = ctnetlink_create_conntrack(cda,
                                                         &otuple,
                                                         &rtuple,
-                                                        master_ct);
+                                                        master_ct,
+                                                        NETLINK_CB(skb).pid,
+                                                        nlmsg_report(nlh));
 +              spin_unlock_bh(&nf_conntrack_lock);
                if (err < 0 && master_ct)
                        nf_ct_put(master_ct);