diff options
author | Ingo Molnar <mingo@elte.hu> | 2012-02-28 04:16:01 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2012-02-28 04:16:10 -0500 |
commit | bdd4431c8d071491a68a65d9457996f222b5ecd3 (patch) | |
tree | 9de69701cdba1dd28bcb804476bff07806f6d7a3 /net/mac80211 | |
parent | 586c6e7013c8cbb8c91aaa6568ec349b1dc2c691 (diff) | |
parent | 1cc85961e214773cb7d7f2ccbe3bc644dd466df0 (diff) |
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu
The major features of this series are:
- making RCU more aggressive about entering dyntick-idle mode in order to
improve energy efficiency
- converting a few more call_rcu()s to kfree_rcu()s
- applying a number of rcutree fixes and cleanups to rcutiny
- removing CONFIG_SMP #ifdefs from treercu
- allowing RCU CPU stall times to be set via sysfs
- adding CPU-stall capability to rcutorture
- adding more RCU-abuse diagnostics
- updating documentation
- fixing yet more issues located by the still-ongoing top-to-bottom
inspection of RCU, this time with a special focus on the
CPU-hotplug code path.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index edf167e3b8f3..30420bc1f699 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -413,12 +413,6 @@ struct mesh_path *mesh_path_lookup_by_idx(int idx, struct ieee80211_sub_if_data | |||
413 | return NULL; | 413 | return NULL; |
414 | } | 414 | } |
415 | 415 | ||
416 | static void mesh_gate_node_reclaim(struct rcu_head *rp) | ||
417 | { | ||
418 | struct mpath_node *node = container_of(rp, struct mpath_node, rcu); | ||
419 | kfree(node); | ||
420 | } | ||
421 | |||
422 | /** | 416 | /** |
423 | * mesh_path_add_gate - add the given mpath to a mesh gate to our path table | 417 | * mesh_path_add_gate - add the given mpath to a mesh gate to our path table |
424 | * @mpath: gate path to add to table | 418 | * @mpath: gate path to add to table |
@@ -479,7 +473,7 @@ static int mesh_gate_del(struct mesh_table *tbl, struct mesh_path *mpath) | |||
479 | if (gate->mpath == mpath) { | 473 | if (gate->mpath == mpath) { |
480 | spin_lock_bh(&tbl->gates_lock); | 474 | spin_lock_bh(&tbl->gates_lock); |
481 | hlist_del_rcu(&gate->list); | 475 | hlist_del_rcu(&gate->list); |
482 | call_rcu(&gate->rcu, mesh_gate_node_reclaim); | 476 | kfree_rcu(gate, rcu); |
483 | spin_unlock_bh(&tbl->gates_lock); | 477 | spin_unlock_bh(&tbl->gates_lock); |
484 | mpath->sdata->u.mesh.num_gates--; | 478 | mpath->sdata->u.mesh.num_gates--; |
485 | mpath->is_gate = false; | 479 | mpath->is_gate = false; |