Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.git] / net / netfilter / nf_tables_api.c
index ff04cdc87f7604777ea30cf5595912420cdc5889..062b73a83af0efd2537669ec515312f50815d041 100644 (file)
@@ -1557,8 +1557,9 @@ static void nft_chain_stats_replace(struct nft_trans *trans)
        if (!nft_trans_chain_stats(trans))
                return;
 
-       rcu_swap_protected(chain->stats, nft_trans_chain_stats(trans),
-                          lockdep_commit_lock_is_held(trans->ctx.net));
+       nft_trans_chain_stats(trans) =
+               rcu_replace_pointer(chain->stats, nft_trans_chain_stats(trans),
+                                   lockdep_commit_lock_is_held(trans->ctx.net));
 
        if (!nft_trans_chain_stats(trans))
                static_branch_inc(&nft_counters_enabled);