Lines Matching refs:mpath
1405 struct mesh_path *mpath; in ieee80211_add_mpath() local
1417 mpath = mesh_path_add(sdata, dst); in ieee80211_add_mpath()
1418 if (IS_ERR(mpath)) { in ieee80211_add_mpath()
1420 return PTR_ERR(mpath); in ieee80211_add_mpath()
1423 mesh_path_fix_nexthop(mpath, sta); in ieee80211_add_mpath()
1445 struct mesh_path *mpath; in ieee80211_change_mpath() local
1458 mpath = mesh_path_lookup(sdata, dst); in ieee80211_change_mpath()
1459 if (!mpath) { in ieee80211_change_mpath()
1464 mesh_path_fix_nexthop(mpath, sta); in ieee80211_change_mpath()
1470 static void mpath_set_pinfo(struct mesh_path *mpath, u8 *next_hop, in mpath_set_pinfo() argument
1473 struct sta_info *next_hop_sta = rcu_dereference(mpath->next_hop); in mpath_set_pinfo()
1492 pinfo->frame_qlen = mpath->frame_queue.qlen; in mpath_set_pinfo()
1493 pinfo->sn = mpath->sn; in mpath_set_pinfo()
1494 pinfo->metric = mpath->metric; in mpath_set_pinfo()
1495 if (time_before(jiffies, mpath->exp_time)) in mpath_set_pinfo()
1496 pinfo->exptime = jiffies_to_msecs(mpath->exp_time - jiffies); in mpath_set_pinfo()
1498 jiffies_to_msecs(mpath->discovery_timeout); in mpath_set_pinfo()
1499 pinfo->discovery_retries = mpath->discovery_retries; in mpath_set_pinfo()
1500 if (mpath->flags & MESH_PATH_ACTIVE) in mpath_set_pinfo()
1502 if (mpath->flags & MESH_PATH_RESOLVING) in mpath_set_pinfo()
1504 if (mpath->flags & MESH_PATH_SN_VALID) in mpath_set_pinfo()
1506 if (mpath->flags & MESH_PATH_FIXED) in mpath_set_pinfo()
1508 if (mpath->flags & MESH_PATH_RESOLVED) in mpath_set_pinfo()
1517 struct mesh_path *mpath; in ieee80211_get_mpath() local
1522 mpath = mesh_path_lookup(sdata, dst); in ieee80211_get_mpath()
1523 if (!mpath) { in ieee80211_get_mpath()
1527 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_get_mpath()
1528 mpath_set_pinfo(mpath, next_hop, pinfo); in ieee80211_get_mpath()
1538 struct mesh_path *mpath; in ieee80211_dump_mpath() local
1543 mpath = mesh_path_lookup_by_idx(sdata, idx); in ieee80211_dump_mpath()
1544 if (!mpath) { in ieee80211_dump_mpath()
1548 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_dump_mpath()
1549 mpath_set_pinfo(mpath, next_hop, pinfo); in ieee80211_dump_mpath()
1554 static void mpp_set_pinfo(struct mesh_path *mpath, u8 *mpp, in mpp_set_pinfo() argument
1558 memcpy(mpp, mpath->mpp, ETH_ALEN); in mpp_set_pinfo()
1568 struct mesh_path *mpath; in ieee80211_get_mpp() local
1573 mpath = mpp_path_lookup(sdata, dst); in ieee80211_get_mpp()
1574 if (!mpath) { in ieee80211_get_mpp()
1578 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_get_mpp()
1579 mpp_set_pinfo(mpath, mpp, pinfo); in ieee80211_get_mpp()
1589 struct mesh_path *mpath; in ieee80211_dump_mpp() local
1594 mpath = mpp_path_lookup_by_idx(sdata, idx); in ieee80211_dump_mpp()
1595 if (!mpath) { in ieee80211_dump_mpp()
1599 memcpy(dst, mpath->dst, ETH_ALEN); in ieee80211_dump_mpp()
1600 mpp_set_pinfo(mpath, mpp, pinfo); in ieee80211_dump_mpp()