Lines Matching refs:mpath

1644 	struct mesh_path *mpath;  in ieee80211_add_mpath()  local
1656 mpath = mesh_path_add(sdata, dst); in ieee80211_add_mpath()
1657 if (IS_ERR(mpath)) { in ieee80211_add_mpath()
1659 return PTR_ERR(mpath); in ieee80211_add_mpath()
1662 mesh_path_fix_nexthop(mpath, sta); in ieee80211_add_mpath()
1684 struct mesh_path *mpath; in ieee80211_change_mpath() local
1697 mpath = mesh_path_lookup(sdata, dst); in ieee80211_change_mpath()
1698 if (!mpath) { in ieee80211_change_mpath()
1703 mesh_path_fix_nexthop(mpath, sta); in ieee80211_change_mpath()
1709 static void mpath_set_pinfo(struct mesh_path *mpath, u8 *next_hop, in mpath_set_pinfo() argument
1712 struct sta_info *next_hop_sta = rcu_dereference(mpath->next_hop); in mpath_set_pinfo()
1721 pinfo->generation = mpath->sdata->u.mesh.mesh_paths_generation; in mpath_set_pinfo()
1731 pinfo->frame_qlen = mpath->frame_queue.qlen; in mpath_set_pinfo()
1732 pinfo->sn = mpath->sn; in mpath_set_pinfo()
1733 pinfo->metric = mpath->metric; in mpath_set_pinfo()
1734 if (time_before(jiffies, mpath->exp_time)) in mpath_set_pinfo()
1735 pinfo->exptime = jiffies_to_msecs(mpath->exp_time - jiffies); in mpath_set_pinfo()
1737 jiffies_to_msecs(mpath->discovery_timeout); in mpath_set_pinfo()
1738 pinfo->discovery_retries = mpath->discovery_retries; in mpath_set_pinfo()
1739 if (mpath->flags & MESH_PATH_ACTIVE) in mpath_set_pinfo()
1741 if (mpath->flags & MESH_PATH_RESOLVING) in mpath_set_pinfo()
1743 if (mpath->flags & MESH_PATH_SN_VALID) in mpath_set_pinfo()
1745 if (mpath->flags & MESH_PATH_FIXED) in mpath_set_pinfo()
1747 if (mpath->flags & MESH_PATH_RESOLVED) in mpath_set_pinfo()
1756 struct mesh_path *mpath; in ieee80211_get_mpath() local
1761 mpath = mesh_path_lookup(sdata, dst); in ieee80211_get_mpath()
1762 if (!mpath) { in ieee80211_get_mpath()
1766 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_get_mpath()
1767 mpath_set_pinfo(mpath, next_hop, pinfo); in ieee80211_get_mpath()
1777 struct mesh_path *mpath; in ieee80211_dump_mpath() local
1782 mpath = mesh_path_lookup_by_idx(sdata, idx); in ieee80211_dump_mpath()
1783 if (!mpath) { in ieee80211_dump_mpath()
1787 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_dump_mpath()
1788 mpath_set_pinfo(mpath, next_hop, pinfo); in ieee80211_dump_mpath()
1793 static void mpp_set_pinfo(struct mesh_path *mpath, u8 *mpp, in mpp_set_pinfo() argument
1797 memcpy(mpp, mpath->mpp, ETH_ALEN); in mpp_set_pinfo()
1799 pinfo->generation = mpath->sdata->u.mesh.mpp_paths_generation; in mpp_set_pinfo()
1807 struct mesh_path *mpath; in ieee80211_get_mpp() local
1812 mpath = mpp_path_lookup(sdata, dst); in ieee80211_get_mpp()
1813 if (!mpath) { in ieee80211_get_mpp()
1817 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_get_mpp()
1818 mpp_set_pinfo(mpath, mpp, pinfo); in ieee80211_get_mpp()
1828 struct mesh_path *mpath; in ieee80211_dump_mpp() local
1833 mpath = mpp_path_lookup_by_idx(sdata, idx); in ieee80211_dump_mpp()
1834 if (!mpath) { in ieee80211_dump_mpp()
1838 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_dump_mpp()
1839 mpp_set_pinfo(mpath, mpp, pinfo); in ieee80211_dump_mpp()