Lines Matching refs:nt

101 static void node_reclaim(struct ieee80211_node_table *nt,
104 struct ieee80211_node_table *nt, const char *name,
108 static void ieee80211_node_table_cleanup(struct ieee80211_node_table *nt);
882 struct ieee80211_node_table *nt = obss->ni_table; in ieee80211_sta_join1() local
885 if (nt != NULL) { in ieee80211_sta_join1()
887 IEEE80211_NODE_LOCK(nt); in ieee80211_sta_join1()
888 node_reclaim(nt, obss); /* station table reference */ in ieee80211_sta_join1()
889 IEEE80211_NODE_UNLOCK(nt); in ieee80211_sta_join1()
1392 ieee80211_add_node_nt(struct ieee80211_node_table *nt, in ieee80211_add_node_nt() argument
1395 struct ieee80211com *ic = nt->nt_ic; in ieee80211_add_node_nt()
1398 IEEE80211_NODE_LOCK_ASSERT(nt); in ieee80211_add_node_nt()
1402 TAILQ_INSERT_TAIL(&nt->nt_node, ni, ni_list); in ieee80211_add_node_nt()
1403 LIST_INSERT_HEAD(&nt->nt_hash[hash], ni, ni_hash); in ieee80211_add_node_nt()
1404 nt->nt_count++; in ieee80211_add_node_nt()
1405 ni->ni_table = nt; in ieee80211_add_node_nt()
1409 ieee80211_del_node_nt(struct ieee80211_node_table *nt, in ieee80211_del_node_nt() argument
1413 IEEE80211_NODE_LOCK_ASSERT(nt); in ieee80211_del_node_nt()
1415 TAILQ_REMOVE(&nt->nt_node, ni, ni_list); in ieee80211_del_node_nt()
1417 nt->nt_count--; in ieee80211_del_node_nt()
1418 KASSERT(nt->nt_count >= 0, in ieee80211_del_node_nt()
1419 ("nt_count is negative (%d)!\n", nt->nt_count)); in ieee80211_del_node_nt()
1424 ieee80211_alloc_node(struct ieee80211_node_table *nt, in ieee80211_alloc_node() argument
1428 struct ieee80211com *ic = nt->nt_ic; in ieee80211_alloc_node()
1439 ether_sprintf(macaddr), nt->nt_name); in ieee80211_alloc_node()
1454 ni->ni_inact_reload = nt->nt_inact_init; in ieee80211_alloc_node()
1462 IEEE80211_NODE_LOCK(nt); in ieee80211_alloc_node()
1463 ieee80211_add_node_nt(nt, ni); in ieee80211_alloc_node()
1466 IEEE80211_NODE_UNLOCK(nt); in ieee80211_alloc_node()
1629 _ieee80211_find_node_locked(struct ieee80211_node_table *nt, in _ieee80211_find_node_locked() argument
1636 IEEE80211_NODE_LOCK_ASSERT(nt); in _ieee80211_find_node_locked()
1638 hash = IEEE80211_NODE_HASH(nt->nt_ic, macaddr); in _ieee80211_find_node_locked()
1639 LIST_FOREACH(ni, &nt->nt_hash[hash], ni_hash) { in _ieee80211_find_node_locked()
1656 _ieee80211_find_node(struct ieee80211_node_table *nt, in _ieee80211_find_node() argument
1662 IEEE80211_NODE_LOCK(nt); in _ieee80211_find_node()
1663 ni = _ieee80211_find_node_locked(nt, macaddr, func, line); in _ieee80211_find_node()
1664 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_find_node()
1669 _ieee80211_find_vap_node_locked(struct ieee80211_node_table *nt, in _ieee80211_find_vap_node_locked() argument
1676 IEEE80211_NODE_LOCK_ASSERT(nt); in _ieee80211_find_vap_node_locked()
1678 hash = IEEE80211_NODE_HASH(nt->nt_ic, macaddr); in _ieee80211_find_vap_node_locked()
1679 LIST_FOREACH(ni, &nt->nt_hash[hash], ni_hash) { in _ieee80211_find_vap_node_locked()
1697 _ieee80211_find_vap_node(struct ieee80211_node_table *nt, in _ieee80211_find_vap_node() argument
1703 IEEE80211_NODE_LOCK(nt); in _ieee80211_find_vap_node()
1704 ni = _ieee80211_find_vap_node_locked(nt, vap, macaddr, func, line); in _ieee80211_find_vap_node()
1705 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_find_vap_node()
1955 _find_rxnode(struct ieee80211_node_table *nt, in _find_rxnode() argument
1961 return _ieee80211_find_node_locked(nt, wh->i_addr2, func, line); in _find_rxnode()
1974 struct ieee80211_node_table *nt; in _ieee80211_find_rxnode() local
1977 nt = &ic->ic_sta; in _ieee80211_find_rxnode()
1978 IEEE80211_NODE_LOCK(nt); in _ieee80211_find_rxnode()
1979 ni = _find_rxnode(nt, wh, func, line); in _ieee80211_find_rxnode()
1980 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_find_rxnode()
1998 struct ieee80211_node_table *nt; in _ieee80211_find_rxnode_withkey() local
2001 nt = &ic->ic_sta; in _ieee80211_find_rxnode_withkey()
2002 IEEE80211_NODE_LOCK(nt); in _ieee80211_find_rxnode_withkey()
2003 if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax) in _ieee80211_find_rxnode_withkey()
2004 ni = nt->nt_keyixmap[keyix]; in _ieee80211_find_rxnode_withkey()
2008 ni = _find_rxnode(nt, wh, func, line); in _ieee80211_find_rxnode_withkey()
2009 if (ni != NULL && nt->nt_keyixmap != NULL) { in _ieee80211_find_rxnode_withkey()
2016 if (keyix < nt->nt_keyixmax && in _ieee80211_find_rxnode_withkey()
2017 nt->nt_keyixmap[keyix] == NULL) { in _ieee80211_find_rxnode_withkey()
2023 nt->nt_keyixmap[keyix] = ieee80211_ref_node(ni); in _ieee80211_find_rxnode_withkey()
2032 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_find_rxnode_withkey()
2048 struct ieee80211_node_table *nt = &vap->iv_ic->ic_sta; in _ieee80211_find_txnode() local
2058 IEEE80211_NODE_LOCK(nt); in _ieee80211_find_txnode()
2064 ni = _ieee80211_find_node_locked(nt, macaddr, func, line); in _ieee80211_find_txnode()
2065 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_find_txnode()
2109 struct ieee80211_node_table *nt = ni->ni_table; in __ieee80211_free_node() local
2121 nt != NULL ? nt->nt_name : "<gone>"); in __ieee80211_free_node()
2128 if (nt != NULL) in __ieee80211_free_node()
2129 ieee80211_del_node_nt(nt, ni); in __ieee80211_free_node()
2137 node_clear_keyixmap(struct ieee80211_node_table *nt, struct ieee80211_node *ni) in node_clear_keyixmap() argument
2142 if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax && in node_clear_keyixmap()
2143 nt->nt_keyixmap[keyix] == ni) { in node_clear_keyixmap()
2147 nt->nt_keyixmap[keyix] = NULL; in node_clear_keyixmap()
2159 struct ieee80211_node_table *nt = ni->ni_table; in _ieee80211_free_node() local
2166 if (nt != NULL) { in _ieee80211_free_node()
2167 IEEE80211_NODE_LOCK(nt); in _ieee80211_free_node()
2174 if (node_clear_keyixmap(nt, ni)) in _ieee80211_free_node()
2176 IEEE80211_NODE_UNLOCK(nt); in _ieee80211_free_node()
2190 struct ieee80211_node_table *nt = &ic->ic_sta; in ieee80211_node_delucastkey() local
2207 isowned = IEEE80211_NODE_IS_LOCKED(nt); in ieee80211_node_delucastkey()
2209 IEEE80211_NODE_LOCK(nt); in ieee80211_node_delucastkey()
2215 if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax) { in ieee80211_node_delucastkey()
2216 nikey = nt->nt_keyixmap[keyix]; in ieee80211_node_delucastkey()
2217 nt->nt_keyixmap[keyix] = NULL; in ieee80211_node_delucastkey()
2221 IEEE80211_NODE_UNLOCK(nt); in ieee80211_node_delucastkey()
2241 node_reclaim(struct ieee80211_node_table *nt, struct ieee80211_node *ni) in node_reclaim() argument
2244 IEEE80211_NODE_LOCK_ASSERT(nt); in node_reclaim()
2249 nt->nt_name, ieee80211_node_refcnt(ni)-1); in node_reclaim()
2257 (void)node_clear_keyixmap(nt, ni); in node_reclaim()
2265 ieee80211_del_node_nt(nt, ni); in node_reclaim()
2276 struct ieee80211_node_table *nt, in ieee80211_node_table_init() argument
2280 nt->nt_ic = ic; in ieee80211_node_table_init()
2281 IEEE80211_NODE_LOCK_INIT(nt, ic->ic_name); in ieee80211_node_table_init()
2282 TAILQ_INIT(&nt->nt_node); in ieee80211_node_table_init()
2283 nt->nt_count = 0; in ieee80211_node_table_init()
2284 nt->nt_name = name; in ieee80211_node_table_init()
2285 nt->nt_inact_init = inact; in ieee80211_node_table_init()
2286 nt->nt_keyixmax = keyixmax; in ieee80211_node_table_init()
2287 if (nt->nt_keyixmax > 0) { in ieee80211_node_table_init()
2288 nt->nt_keyixmap = (struct ieee80211_node **) IEEE80211_MALLOC( in ieee80211_node_table_init()
2292 if (nt->nt_keyixmap == NULL) in ieee80211_node_table_init()
2297 nt->nt_keyixmap = NULL; in ieee80211_node_table_init()
2301 ieee80211_node_table_reset(struct ieee80211_node_table *nt, in ieee80211_node_table_reset() argument
2306 IEEE80211_NODE_LOCK(nt); in ieee80211_node_table_reset()
2307 TAILQ_FOREACH_SAFE(ni, &nt->nt_node, ni_list, next) { in ieee80211_node_table_reset()
2320 node_reclaim(nt, ni); in ieee80211_node_table_reset()
2330 TAILQ_FOREACH_SAFE(ni, &nt->nt_node, ni_list, next) in ieee80211_node_table_reset()
2334 IEEE80211_NODE_UNLOCK(nt); in ieee80211_node_table_reset()
2338 ieee80211_node_table_cleanup(struct ieee80211_node_table *nt) in ieee80211_node_table_cleanup() argument
2340 ieee80211_node_table_reset(nt, NULL); in ieee80211_node_table_cleanup()
2341 if (nt->nt_keyixmap != NULL) { in ieee80211_node_table_cleanup()
2345 for (i = 0; i < nt->nt_keyixmax; i++) in ieee80211_node_table_cleanup()
2346 if (nt->nt_keyixmap[i] != NULL) in ieee80211_node_table_cleanup()
2348 nt->nt_name, i); in ieee80211_node_table_cleanup()
2350 IEEE80211_FREE(nt->nt_keyixmap, M_80211_NODE); in ieee80211_node_table_cleanup()
2351 nt->nt_keyixmap = NULL; in ieee80211_node_table_cleanup()
2353 IEEE80211_NODE_LOCK_DESTROY(nt); in ieee80211_node_table_cleanup()
2481 struct ieee80211_node_table *nt = &ic->ic_sta; in ieee80211_timeout_stations() local
2483 ieee80211_iterate_nodes(nt, timeout_stations, NULL); in ieee80211_timeout_stations()
2493 struct ieee80211_node_table *nt = &ic->ic_sta; in ieee80211_drain() local
2497 IEEE80211_NODE_LOCK(nt); in ieee80211_drain()
2498 TAILQ_FOREACH(ni, &nt->nt_node, ni_list) { in ieee80211_drain()
2533 IEEE80211_NODE_UNLOCK(nt); in ieee80211_drain()
2586 ieee80211_iterate_nodes_vap(struct ieee80211_node_table *nt, in ieee80211_iterate_nodes_vap() argument
2600 IEEE80211_NODE_LOCK(nt); in ieee80211_iterate_nodes_vap()
2601 count = nt->nt_count; in ieee80211_iterate_nodes_vap()
2606 IEEE80211_NODE_UNLOCK(nt); in ieee80211_iterate_nodes_vap()
2611 TAILQ_FOREACH(ni, &nt->nt_node, ni_list) { in ieee80211_iterate_nodes_vap()
2620 IEEE80211_NODE_UNLOCK(nt); in ieee80211_iterate_nodes_vap()
2640 ieee80211_iterate_nodes(struct ieee80211_node_table *nt, in ieee80211_iterate_nodes() argument
2644 (void) ieee80211_iterate_nodes_vap(nt, NULL, f, arg); in ieee80211_iterate_nodes()
2648 ieee80211_dump_node(struct ieee80211_node_table *nt __unused, in ieee80211_dump_node()
2684 ieee80211_dump_nodes(struct ieee80211_node_table *nt) in ieee80211_dump_nodes() argument
2686 ieee80211_iterate_nodes(nt, in ieee80211_dump_nodes()
2687 (ieee80211_iter_func *) ieee80211_dump_node, nt); in ieee80211_dump_nodes()
2975 struct ieee80211_node_table *nt = ni->ni_table; in ieee80211_node_leave() local
3024 if (nt != NULL) { in ieee80211_node_leave()
3025 IEEE80211_NODE_LOCK(nt); in ieee80211_node_leave()
3026 node_reclaim(nt, ni); in ieee80211_node_leave()
3027 IEEE80211_NODE_UNLOCK(nt); in ieee80211_node_leave()