summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLuis Carlos Cobo <luisca@cozybit.com>2008-02-23 15:17:14 +0100
committerJohn W. Linville <linville@tuxdriver.com>2008-03-06 21:30:42 +0100
commiteb2b9311fd00a868e9bf85ab66e86b7dee1643e1 (patch)
tree69167d3359e5bde25f51b8596b65ceae3ebb6a17 /include
parentmac80211: mesh peer link implementation (diff)
downloadlinux-eb2b9311fd00a868e9bf85ab66e86b7dee1643e1.tar.xz
linux-eb2b9311fd00a868e9bf85ab66e86b7dee1643e1.zip
mac80211: mesh path table implementation
The mesh path table associates destinations with the next hop to reach them. The table is a hash of linked lists protected by rcu mechanisms. Every mesh path contains a lock to protect the mesh path state. Each outgoing mesh frame requires a look up into this table. Therefore, the table it has been designed so it is not necessary to hold any lock to find the appropriate next hop. If the path is determined to be active within a rcu context we can safely dereference mpath->next_hop->addr, since it holds a reference to the sta next_hop. After a mesh path has been set active for the first time it next_hop must always point to a valid sta. If this is not possible the mpath must be deleted or replaced in a RCU safe fashion. Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions