From a5ea6169f294bc33a762f7c1c240e3ac0f045f9e Mon Sep 17 00:00:00 2001 From: Patrick McHardy Date: Mon, 12 Feb 2007 11:11:06 -0800 Subject: [PATCH] [NETFILTER]: nf_log: use rcu_assign_pointer for RCU protected pointer Also replace synchronize_net() calls by synchronize_rcu() since the RCU protected data is also used for sysfs. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller --- net/netfilter/nf_log.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/netfilter/nf_log.c b/net/netfilter/nf_log.c index 07e28e08961..a3ff88dcc2a 100644 --- a/net/netfilter/nf_log.c +++ b/net/netfilter/nf_log.c @@ -46,11 +46,11 @@ int nf_log_unregister_pf(int pf) return -EINVAL; spin_lock(&nf_log_lock); - nf_logging[pf] = NULL; + rcu_assign_pointer(nf_logging[pf], NULL); spin_unlock(&nf_log_lock); /* Give time to concurrent readers. */ - synchronize_net(); + synchronize_rcu(); return 0; } @@ -63,11 +63,11 @@ void nf_log_unregister_logger(struct nf_logger *logger) spin_lock(&nf_log_lock); for (i = 0; i < NPROTO; i++) { if (nf_logging[i] == logger) - nf_logging[i] = NULL; + rcu_assign_pointer(nf_logging[i], NULL); } spin_unlock(&nf_log_lock); - synchronize_net(); + synchronize_rcu(); } EXPORT_SYMBOL(nf_log_unregister_logger); -- 2.20.1