diff options
author | Andreea-Cristina Bernat <bernat.ada@gmail.com> | 2014-08-17 09:18:02 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-08-27 06:14:10 -0400 |
commit | 2688eba9d5ba2a35ac8e5efa2e228f105f0a379f (patch) | |
tree | 3b3db587d368a1b17594c94e14f52b164196f16c /net/mac80211/mesh_pathtbl.c | |
parent | ad053a962f1e83597ec8388716619c7633a00ef1 (diff) |
mac80211: Replace rcu_dereference() with rcu_access_pointer()
The "rcu_dereference()" calls are used directly in conditions.
Since their return values are never dereferenced it is recommended to
use "rcu_access_pointer()" instead of "rcu_dereference()".
Therefore, this patch makes the replacements.
The following Coccinelle semantic patch was used:
@@
@@
(
if(
(<+...
- rcu_dereference
+ rcu_access_pointer
(...)
...+>)) {...}
|
while(
(<+...
- rcu_dereference
+ rcu_access_pointer
(...)
...+>)) {...}
)
Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/mesh_pathtbl.c')
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index cf032a8db9d7..a6699dceae7c 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -729,7 +729,7 @@ void mesh_plink_broken(struct sta_info *sta) | |||
729 | tbl = rcu_dereference(mesh_paths); | 729 | tbl = rcu_dereference(mesh_paths); |
730 | for_each_mesh_entry(tbl, node, i) { | 730 | for_each_mesh_entry(tbl, node, i) { |
731 | mpath = node->mpath; | 731 | mpath = node->mpath; |
732 | if (rcu_dereference(mpath->next_hop) == sta && | 732 | if (rcu_access_pointer(mpath->next_hop) == sta && |
733 | mpath->flags & MESH_PATH_ACTIVE && | 733 | mpath->flags & MESH_PATH_ACTIVE && |
734 | !(mpath->flags & MESH_PATH_FIXED)) { | 734 | !(mpath->flags & MESH_PATH_FIXED)) { |
735 | spin_lock_bh(&mpath->state_lock); | 735 | spin_lock_bh(&mpath->state_lock); |
@@ -794,7 +794,7 @@ void mesh_path_flush_by_nexthop(struct sta_info *sta) | |||
794 | tbl = resize_dereference_mesh_paths(); | 794 | tbl = resize_dereference_mesh_paths(); |
795 | for_each_mesh_entry(tbl, node, i) { | 795 | for_each_mesh_entry(tbl, node, i) { |
796 | mpath = node->mpath; | 796 | mpath = node->mpath; |
797 | if (rcu_dereference(mpath->next_hop) == sta) { | 797 | if (rcu_access_pointer(mpath->next_hop) == sta) { |
798 | spin_lock(&tbl->hashwlock[i]); | 798 | spin_lock(&tbl->hashwlock[i]); |
799 | __mesh_path_del(tbl, node); | 799 | __mesh_path_del(tbl, node); |
800 | spin_unlock(&tbl->hashwlock[i]); | 800 | spin_unlock(&tbl->hashwlock[i]); |