Lines Matching refs:ifmsh

240 	struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;  in mesh_path_error_tx()  local
246 if (time_before(jiffies, ifmsh->next_perr)) in mesh_path_error_tx()
289 ifmsh->next_perr = TU_TO_EXP_TIME( in mesh_path_error_tx()
290 ifmsh->mshcfg.dot11MeshHWMPperrMinInterval); in mesh_path_error_tx()
563 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in hwmp_preq_frame_process() local
591 if (SN_GT(target_sn, ifmsh->sn)) in hwmp_preq_frame_process()
592 ifmsh->sn = target_sn; in hwmp_preq_frame_process()
594 if (time_after(jiffies, ifmsh->last_sn_update + in hwmp_preq_frame_process()
596 time_before(jiffies, ifmsh->last_sn_update)) { in hwmp_preq_frame_process()
597 ++ifmsh->sn; in hwmp_preq_frame_process()
598 ifmsh->last_sn_update = jiffies; in hwmp_preq_frame_process()
600 target_sn = ifmsh->sn; in hwmp_preq_frame_process()
609 target_sn = ++ifmsh->sn; in hwmp_preq_frame_process()
611 ifmsh->last_sn_update = jiffies; in hwmp_preq_frame_process()
639 ttl = ifmsh->mshcfg.element_ttl; in hwmp_preq_frame_process()
648 ifmsh->mshstats.dropped_frames_ttl++; in hwmp_preq_frame_process()
652 if (forward && ifmsh->mshcfg.dot11MeshForwarding) { in hwmp_preq_frame_process()
659 ifmsh->mshstats.dropped_frames_ttl++; in hwmp_preq_frame_process()
679 ifmsh->mshstats.fwded_unicast++; in hwmp_preq_frame_process()
681 ifmsh->mshstats.fwded_mcast++; in hwmp_preq_frame_process()
682 ifmsh->mshstats.fwded_frames++; in hwmp_preq_frame_process()
699 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in hwmp_prep_frame_process() local
714 if (!ifmsh->mshcfg.dot11MeshForwarding) in hwmp_prep_frame_process()
761 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in hwmp_perr_frame_process() local
771 ifmsh->mshstats.dropped_frames_ttl++; in hwmp_perr_frame_process()
797 if (!ifmsh->mshcfg.dot11MeshForwarding) in hwmp_perr_frame_process()
813 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in hwmp_rann_frame_process() local
891 ifmsh->mshstats.dropped_frames_ttl++; in hwmp_rann_frame_process()
897 if (ifmsh->mshcfg.dot11MeshForwarding) { in hwmp_rann_frame_process()
974 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_queue_preq() local
983 spin_lock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_queue_preq()
984 if (ifmsh->preq_queue_len == MAX_PREQ_QUEUE_LEN) { in mesh_queue_preq()
985 spin_unlock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_queue_preq()
995 spin_unlock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_queue_preq()
1006 list_add_tail(&preq_node->list, &ifmsh->preq_queue.list); in mesh_queue_preq()
1007 ++ifmsh->preq_queue_len; in mesh_queue_preq()
1008 spin_unlock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_queue_preq()
1010 if (time_after(jiffies, ifmsh->last_preq + min_preq_int_jiff(sdata))) in mesh_queue_preq()
1013 else if (time_before(jiffies, ifmsh->last_preq)) { in mesh_queue_preq()
1017 ifmsh->last_preq = jiffies - min_preq_int_jiff(sdata) - 1; in mesh_queue_preq()
1020 mod_timer(&ifmsh->mesh_path_timer, ifmsh->last_preq + in mesh_queue_preq()
1031 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_path_start_discovery() local
1038 spin_lock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_path_start_discovery()
1039 if (!ifmsh->preq_queue_len || in mesh_path_start_discovery()
1040 time_before(jiffies, ifmsh->last_preq + in mesh_path_start_discovery()
1042 spin_unlock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_path_start_discovery()
1046 preq_node = list_first_entry(&ifmsh->preq_queue.list, in mesh_path_start_discovery()
1049 --ifmsh->preq_queue_len; in mesh_path_start_discovery()
1050 spin_unlock_bh(&ifmsh->mesh_preq_queue_lock); in mesh_path_start_discovery()
1080 ifmsh->last_preq = jiffies; in mesh_path_start_discovery()
1082 if (time_after(jiffies, ifmsh->last_sn_update + in mesh_path_start_discovery()
1084 time_before(jiffies, ifmsh->last_sn_update)) { in mesh_path_start_discovery()
1085 ++ifmsh->sn; in mesh_path_start_discovery()
1103 mesh_path_sel_frame_tx(MPATH_PREQ, 0, sdata->vif.addr, ifmsh->sn, in mesh_path_start_discovery()
1105 ttl, lifetime, 0, ifmsh->preq_id++, sdata); in mesh_path_start_discovery()
1222 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_nexthop_lookup() local
1228 if (ifmsh->mshcfg.dot11MeshNolearn && in mesh_nexthop_lookup()
1292 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_path_tx_root_frame() local
1293 u32 interval = ifmsh->mshcfg.dot11MeshHWMPRannInterval; in mesh_path_tx_root_frame()
1296 flags = (ifmsh->mshcfg.dot11MeshGateAnnouncementProtocol) in mesh_path_tx_root_frame()
1299 switch (ifmsh->mshcfg.dot11MeshHWMPRootMode) { in mesh_path_tx_root_frame()
1302 ++ifmsh->sn, 0, NULL, 0, broadcast_addr, in mesh_path_tx_root_frame()
1303 0, ifmsh->mshcfg.element_ttl, in mesh_path_tx_root_frame()
1310 interval = ifmsh->mshcfg.dot11MeshHWMPactivePathToRootTimeout; in mesh_path_tx_root_frame()
1314 ++ifmsh->sn, target_flags, in mesh_path_tx_root_frame()
1316 0, ifmsh->mshcfg.element_ttl, interval, in mesh_path_tx_root_frame()
1317 0, ifmsh->preq_id++, sdata); in mesh_path_tx_root_frame()