#include <mesh.h>
Public Attributes | |
u8 | discovery_retries |
u32 | discovery_timeout |
u8 | dst [ETH_ALEN] |
unsigned long | exp_time |
enum mesh_path_flags | flags |
struct sk_buff_head | frame_queue |
u8 | hop_count |
bool | is_gate |
bool | is_root |
u32 | metric |
u8 | mpp [ETH_ALEN] |
struct sta_info __rcu * | next_hop |
u32 | rann_metric |
u8 | rann_snd_addr [ETH_ALEN] |
struct rcu_head | rcu |
struct ieee80211_sub_if_data * | sdata |
u32 | sn |
spinlock_t | state_lock |
struct timer_list | timer |
struct mesh_path - mac80211 mesh path structure
: mesh path destination mac address : mesh subif : mesh neighbor to which frames for this destination will be forwarded : mesh path discovery timer : pending queue for frames sent to this destination while the path is unresolved : target sequence number : current metric to this destination : hops to destination : in jiffies, when the path will expire or when it expired : timeout (lapse in jiffies) used for the last discovery retry : number of discovery retries : mesh path flags, as specified on &enum mesh_path_flags : mesh path state lock used to protect changes to the mpath itself. No need to take this lock when adding or removing an mpath to a hash bucket on a path table. : the destination station of this path is a mesh gate
The combination of dst and sdata is unique in the mesh path table. Since the next_hop STA is only protected by RCU as well, deleting the STA must also remove/substitute the mesh_path structure and wait until that is no longer reachable before destroying the STA completely.
struct mesh_path - mac80211 mesh path structure
: mesh path destination mac address : mesh subif : mesh neighbor to which frames for this destination will be forwarded : mesh path discovery timer : pending queue for frames sent to this destination while the path is unresolved : target sequence number : current metric to this destination : hops to destination : in jiffies, when the path will expire or when it expired : timeout (lapse in jiffies) used for the last discovery retry : number of discovery retries : mesh path flags, as specified on &enum mesh_path_flags : mesh path state lock used to protect changes to the mpath itself. No need to take this lock when adding or removing an mpath to a hash bucket on a path table. : the RANN sender address : the aggregated path metric towards the root node : the destination station of this path is a root node : the destination station of this path is a mesh gate
The combination of dst and sdata is unique in the mesh path table. Since the next_hop STA is only protected by RCU as well, deleting the STA must also remove/substitute the mesh_path structure and wait until that is no longer reachable before destroying the STA completely.
Definition at line 94 of file kernel-3.2/mesh.h.
Definition at line 107 of file kernel-3.2/mesh.h.
Definition at line 106 of file kernel-3.2/mesh.h.
Definition at line 95 of file kernel-3.2/mesh.h.
unsigned long mesh_path::exp_time |
Definition at line 105 of file kernel-3.2/mesh.h.
Definition at line 108 of file kernel-3.2/mesh.h.
struct sk_buff_head mesh_path::frame_queue |
Definition at line 100 of file kernel-3.2/mesh.h.
Definition at line 104 of file kernel-3.2/mesh.h.
bool mesh_path::is_gate |
Definition at line 110 of file kernel-3.2/mesh.h.
bool mesh_path::is_root |
Definition at line 134 of file kernel-3.5/mesh.h.
Definition at line 103 of file kernel-3.2/mesh.h.
Definition at line 96 of file kernel-3.2/mesh.h.
struct sta_info __rcu * mesh_path::next_hop |
Definition at line 98 of file kernel-3.2/mesh.h.
Definition at line 133 of file kernel-3.5/mesh.h.
u8 mesh_path::rann_snd_addr[ETH_ALEN] |
Definition at line 132 of file kernel-3.5/mesh.h.
struct rcu_head mesh_path::rcu |
Definition at line 101 of file kernel-3.2/mesh.h.
struct ieee80211_sub_if_data * mesh_path::sdata |
Definition at line 97 of file kernel-3.2/mesh.h.
Definition at line 102 of file kernel-3.2/mesh.h.
spinlock_t mesh_path::state_lock |
Definition at line 109 of file kernel-3.2/mesh.h.
struct timer_list mesh_path::timer |
Definition at line 99 of file kernel-3.2/mesh.h.