Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.git] / net / sched / act_ct.c
index c13638aeef46bef95f2bf5cd09530fd0bb8b271a..ae0de372b1c8f003caafdf354e68a87676bd7ab7 100644 (file)
@@ -721,7 +721,8 @@ static int tcf_ct_init(struct net *net, struct nlattr *nla,
 
        spin_lock_bh(&c->tcf_lock);
        goto_ch = tcf_action_set_ctrlact(*a, parm->action, goto_ch);
-       rcu_swap_protected(c->params, params, lockdep_is_held(&c->tcf_lock));
+       params = rcu_replace_pointer(c->params, params,
+                                    lockdep_is_held(&c->tcf_lock));
        spin_unlock_bh(&c->tcf_lock);
 
        if (goto_ch)