Lines Matching refs:tt_global_entry
71 batadv_tt_global_del_orig_list(struct batadv_tt_global_entry *tt_global_entry);
201 struct batadv_tt_global_entry *tt_global_entry = NULL; in batadv_tt_global_hash_find() local
206 tt_global_entry = container_of(tt_common_entry, in batadv_tt_global_hash_find()
209 return tt_global_entry; in batadv_tt_global_hash_find()
264 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_entry_free_rcu() local
266 tt_global_entry = container_of(rcu, struct batadv_tt_global_entry, in batadv_tt_global_entry_free_rcu()
269 kmem_cache_free(batadv_tg_cache, tt_global_entry); in batadv_tt_global_entry_free_rcu()
279 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_entry_release() local
281 tt_global_entry = container_of(ref, struct batadv_tt_global_entry, in batadv_tt_global_entry_release()
284 batadv_tt_global_del_orig_list(tt_global_entry); in batadv_tt_global_entry_release()
286 call_rcu(&tt_global_entry->common.rcu, batadv_tt_global_entry_free_rcu); in batadv_tt_global_entry_release()
301 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_hash_count() local
304 tt_global_entry = batadv_tt_global_hash_find(bat_priv, addr, vid); in batadv_tt_global_hash_count()
305 if (!tt_global_entry) in batadv_tt_global_hash_count()
308 count = atomic_read(&tt_global_entry->orig_list_count); in batadv_tt_global_hash_count()
309 batadv_tt_global_entry_put(tt_global_entry); in batadv_tt_global_hash_count()
1683 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_add() local
1694 tt_global_entry = batadv_tt_global_hash_find(bat_priv, tt_addr, vid); in batadv_tt_global_add()
1705 if (!tt_global_entry) { in batadv_tt_global_add()
1706 tt_global_entry = kmem_cache_zalloc(batadv_tg_cache, in batadv_tt_global_add()
1708 if (!tt_global_entry) in batadv_tt_global_add()
1711 common = &tt_global_entry->common; in batadv_tt_global_add()
1718 tt_global_entry->roam_at = 0; in batadv_tt_global_add()
1724 tt_global_entry->roam_at = jiffies; in batadv_tt_global_add()
1728 INIT_HLIST_HEAD(&tt_global_entry->orig_list); in batadv_tt_global_add()
1729 atomic_set(&tt_global_entry->orig_list_count, 0); in batadv_tt_global_add()
1730 spin_lock_init(&tt_global_entry->list_lock); in batadv_tt_global_add()
1740 batadv_tt_global_entry_put(tt_global_entry); in batadv_tt_global_add()
1744 common = &tt_global_entry->common; in batadv_tt_global_add()
1758 if (batadv_tt_global_entry_has_orig(tt_global_entry, in batadv_tt_global_add()
1761 batadv_tt_global_del_orig_list(tt_global_entry); in batadv_tt_global_add()
1772 batadv_tt_global_del_orig_list(tt_global_entry); in batadv_tt_global_add()
1791 batadv_tt_global_del_orig_list(tt_global_entry); in batadv_tt_global_add()
1793 tt_global_entry->roam_at = 0; in batadv_tt_global_add()
1798 batadv_tt_global_orig_entry_add(tt_global_entry, orig_node, ttvn, in batadv_tt_global_add()
1818 tt_global_entry->common.flags |= local_flags & BATADV_TT_CLIENT_WIFI; in batadv_tt_global_add()
1824 tt_global_entry->common.flags &= ~BATADV_TT_CLIENT_ROAM; in batadv_tt_global_add()
1827 if (tt_global_entry) in batadv_tt_global_add()
1828 batadv_tt_global_entry_put(tt_global_entry); in batadv_tt_global_add()
1844 struct batadv_tt_global_entry *tt_global_entry) in batadv_transtable_best_orig() argument
1851 head = &tt_global_entry->orig_list; in batadv_transtable_best_orig()
1891 struct batadv_tt_global_entry *tt_global_entry, in batadv_tt_global_print_entry() argument
1901 tt_common_entry = &tt_global_entry->common; in batadv_tt_global_print_entry()
1904 best_entry = batadv_transtable_best_orig(bat_priv, tt_global_entry); in batadv_tt_global_print_entry()
1919 '*', tt_global_entry->common.addr, in batadv_tt_global_print_entry()
1920 batadv_print_vid(tt_global_entry->common.vid), in batadv_tt_global_print_entry()
1932 head = &tt_global_entry->orig_list; in batadv_tt_global_print_entry()
1951 '+', tt_global_entry->common.addr, in batadv_tt_global_print_entry()
1952 batadv_print_vid(tt_global_entry->common.vid), in batadv_tt_global_print_entry()
2237 _batadv_tt_global_del_orig_entry(struct batadv_tt_global_entry *tt_global_entry, in _batadv_tt_global_del_orig_entry() argument
2240 lockdep_assert_held(&tt_global_entry->list_lock); in _batadv_tt_global_del_orig_entry()
2243 tt_global_entry->common.vid); in _batadv_tt_global_del_orig_entry()
2244 atomic_dec(&tt_global_entry->orig_list_count); in _batadv_tt_global_del_orig_entry()
2254 batadv_tt_global_del_orig_list(struct batadv_tt_global_entry *tt_global_entry) in batadv_tt_global_del_orig_list() argument
2260 spin_lock_bh(&tt_global_entry->list_lock); in batadv_tt_global_del_orig_list()
2261 head = &tt_global_entry->orig_list; in batadv_tt_global_del_orig_list()
2263 _batadv_tt_global_del_orig_entry(tt_global_entry, orig_entry); in batadv_tt_global_del_orig_list()
2264 spin_unlock_bh(&tt_global_entry->list_lock); in batadv_tt_global_del_orig_list()
2279 struct batadv_tt_global_entry *tt_global_entry, in batadv_tt_global_del_orig_node() argument
2288 spin_lock_bh(&tt_global_entry->list_lock); in batadv_tt_global_del_orig_node()
2289 head = &tt_global_entry->orig_list; in batadv_tt_global_del_orig_node()
2292 vid = tt_global_entry->common.vid; in batadv_tt_global_del_orig_node()
2296 tt_global_entry->common.addr, in batadv_tt_global_del_orig_node()
2298 _batadv_tt_global_del_orig_entry(tt_global_entry, in batadv_tt_global_del_orig_node()
2302 spin_unlock_bh(&tt_global_entry->list_lock); in batadv_tt_global_del_orig_node()
2311 struct batadv_tt_global_entry *tt_global_entry, in batadv_tt_global_del_roaming() argument
2324 head = &tt_global_entry->orig_list; in batadv_tt_global_del_roaming()
2335 tt_global_entry->common.flags |= BATADV_TT_CLIENT_ROAM; in batadv_tt_global_del_roaming()
2336 tt_global_entry->roam_at = jiffies; in batadv_tt_global_del_roaming()
2341 batadv_tt_global_del_orig_node(bat_priv, tt_global_entry, in batadv_tt_global_del_roaming()
2361 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_del() local
2364 tt_global_entry = batadv_tt_global_hash_find(bat_priv, addr, vid); in batadv_tt_global_del()
2365 if (!tt_global_entry) in batadv_tt_global_del()
2369 batadv_tt_global_del_orig_node(bat_priv, tt_global_entry, in batadv_tt_global_del()
2372 if (hlist_empty(&tt_global_entry->orig_list)) in batadv_tt_global_del()
2373 batadv_tt_global_free(bat_priv, tt_global_entry, in batadv_tt_global_del()
2393 tt_global_entry->common.addr, in batadv_tt_global_del()
2397 batadv_tt_global_del_orig_list(tt_global_entry); in batadv_tt_global_del()
2398 batadv_tt_global_free(bat_priv, tt_global_entry, message); in batadv_tt_global_del()
2401 batadv_tt_global_del_roaming(bat_priv, tt_global_entry, in batadv_tt_global_del()
2406 if (tt_global_entry) in batadv_tt_global_del()
2407 batadv_tt_global_entry_put(tt_global_entry); in batadv_tt_global_del()
2570 struct batadv_tt_global_entry *tt_global_entry) in _batadv_is_ap_isolated() argument
2573 tt_global_entry->common.flags & BATADV_TT_CLIENT_WIFI) in _batadv_is_ap_isolated()
2578 tt_global_entry->common.flags & BATADV_TT_CLIENT_ISOLA) in _batadv_is_ap_isolated()
2604 struct batadv_tt_global_entry *tt_global_entry = NULL; in batadv_transtable_search() local
2615 tt_global_entry = batadv_tt_global_hash_find(bat_priv, addr, vid); in batadv_transtable_search()
2616 if (!tt_global_entry) in batadv_transtable_search()
2623 _batadv_is_ap_isolated(tt_local_entry, tt_global_entry)) in batadv_transtable_search()
2627 best_entry = batadv_transtable_best_orig(bat_priv, tt_global_entry); in batadv_transtable_search()
2636 if (tt_global_entry) in batadv_transtable_search()
2637 batadv_tt_global_entry_put(tt_global_entry); in batadv_transtable_search()
2954 const struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_valid() local
2961 tt_global_entry = container_of(tt_common_entry, in batadv_tt_global_valid()
2965 return batadv_tt_global_entry_has_orig(tt_global_entry, orig_node, in batadv_tt_global_valid()
3976 struct batadv_tt_global_entry *tt_global_entry; in batadv_is_ap_isolated() local
3991 tt_global_entry = batadv_tt_global_hash_find(bat_priv, src, vid); in batadv_is_ap_isolated()
3992 if (!tt_global_entry) in batadv_is_ap_isolated()
3995 if (_batadv_is_ap_isolated(tt_local_entry, tt_global_entry)) in batadv_is_ap_isolated()
3998 batadv_tt_global_entry_put(tt_global_entry); in batadv_is_ap_isolated()
4104 struct batadv_tt_global_entry *tt_global_entry; in batadv_tt_global_client_is_roaming() local
4107 tt_global_entry = batadv_tt_global_hash_find(bat_priv, addr, vid); in batadv_tt_global_client_is_roaming()
4108 if (!tt_global_entry) in batadv_tt_global_client_is_roaming()
4111 ret = tt_global_entry->common.flags & BATADV_TT_CLIENT_ROAM; in batadv_tt_global_client_is_roaming()
4112 batadv_tt_global_entry_put(tt_global_entry); in batadv_tt_global_client_is_roaming()