[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090623150404.22490.15268.stgit@localhost>
Date: Tue, 23 Jun 2009 17:04:04 +0200
From: Jesper Dangaard Brouer <hawk@...x.dk>
To: "David S. Miller" <davem@...emloft.net>
Cc: Jesper Dangaard Brouer <hawk@...x.dk>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
dougthompson@...ssion.com, bluesmoke-devel@...ts.sourceforge.net,
axboe@...nel.dk, "Patrick McHardy" <kaber@...sh.net>,
christine.caulfield@...glemail.com, Trond.Myklebust@...app.com,
linux-wireless@...r.kernel.org, johannes@...solutions.net,
yoshfuji@...ux-ipv6.org, shemminger@...ux-foundation.org,
linux-nfs@...r.kernel.org, bfields@...ldses.org, neilb@...e.de,
linux-ext4@...r.kernel.org, tytso@....edu, adilger@....com,
netfilter-devel@...r.kernel.org
Subject: [PATCH 02/10] bridge: Use rcu_barrier() instead of syncronize_net()
on unload.
When unloading modules that uses call_rcu() callbacks, then we must
use rcu_barrier(). This module uses syncronize_net() which is not
enough to be sure that all callback has been completed.
Signed-off-by: Jesper Dangaard Brouer <hawk@...x.dk>
---
net/bridge/br.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/net/bridge/br.c b/net/bridge/br.c
index 9aac521..e1241c7 100644
--- a/net/bridge/br.c
+++ b/net/bridge/br.c
@@ -93,7 +93,7 @@ static void __exit br_deinit(void)
unregister_pernet_subsys(&br_net_ops);
- synchronize_net();
+ rcu_barrier(); /* Wait for completion of call_rcu()'s */
br_netfilter_fini();
#if defined(CONFIG_ATM_LANE) || defined(CONFIG_ATM_LANE_MODULE)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists