Lines Matching refs:tt_local_entry
168 * Return: a pointer to the corresponding tt_local_entry struct if the client is
176 struct batadv_tt_local_entry *tt_local_entry = NULL;
181 tt_local_entry = container_of(tt_common_entry,
184 return tt_local_entry;
213 * batadv_tt_local_entry_release() - release tt_local_entry from lists and queue
219 struct batadv_tt_local_entry *tt_local_entry;
221 tt_local_entry = container_of(ref, struct batadv_tt_local_entry,
224 batadv_meshif_vlan_put(tt_local_entry->vlan);
226 kfree_rcu(tt_local_entry, common.rcu);
230 * batadv_tt_local_entry_put() - decrement the tt_local_entry refcounter and
232 * @tt_local_entry: tt_local_entry to be free'd
235 batadv_tt_local_entry_put(struct batadv_tt_local_entry *tt_local_entry)
237 if (!tt_local_entry)
240 kref_put(&tt_local_entry->common.refcount,
416 * @tt_local_entry: the TT entry involved in the event
420 struct batadv_tt_local_entry *tt_local_entry,
424 struct batadv_tt_common_entry *common = &tt_local_entry->common;
1178 struct batadv_tt_local_entry *tt_local_entry,
1181 batadv_tt_local_event(bat_priv, tt_local_entry, flags);
1187 tt_local_entry->common.flags |= BATADV_TT_CLIENT_PENDING;
1191 tt_local_entry->common.addr,
1192 batadv_print_vid(tt_local_entry->common.vid), message);
1210 struct batadv_tt_local_entry *tt_local_entry;
1214 tt_local_entry = batadv_tt_local_hash_find(bat_priv, addr, vid);
1215 if (!tt_local_entry)
1218 curr_flags = tt_local_entry->common.flags;
1228 tt_local_entry->common.flags |= BATADV_TT_CLIENT_ROAM;
1231 if (!(tt_local_entry->common.flags & BATADV_TT_CLIENT_NEW)) {
1232 batadv_tt_local_set_pending(bat_priv, tt_local_entry, flags,
1239 batadv_tt_local_event(bat_priv, tt_local_entry, BATADV_TT_CLIENT_DEL);
1244 &tt_local_entry->common);
1255 batadv_tt_local_entry_put(tt_local_entry);
1271 struct batadv_tt_local_entry *tt_local_entry;
1277 tt_local_entry = container_of(tt_common_entry,
1280 if (tt_local_entry->common.flags & BATADV_TT_CLIENT_NOPURGE)
1284 if (tt_local_entry->common.flags & BATADV_TT_CLIENT_PENDING)
1287 if (!batadv_has_timed_out(tt_local_entry->last_seen, timeout))
1290 batadv_tt_local_set_pending(bat_priv, tt_local_entry,
1555 struct batadv_tt_local_entry *tt_local_entry;
1566 tt_local_entry = batadv_tt_local_hash_find(bat_priv, tt_addr, vid);
1572 if ((flags & BATADV_TT_CLIENT_TEMP) && tt_local_entry &&
1573 !(tt_local_entry->common.flags & BATADV_TT_CLIENT_NEW))
1699 batadv_tt_local_entry_put(tt_local_entry);
2291 _batadv_is_ap_isolated(struct batadv_tt_local_entry *tt_local_entry,
2294 if (tt_local_entry->common.flags & BATADV_TT_CLIENT_WIFI &&
2299 if (tt_local_entry->common.flags & BATADV_TT_CLIENT_ISOLA &&
2325 struct batadv_tt_local_entry *tt_local_entry = NULL;
2331 tt_local_entry = batadv_tt_local_hash_find(bat_priv, src, vid);
2332 if (!tt_local_entry ||
2333 (tt_local_entry->common.flags & BATADV_TT_CLIENT_PENDING))
2344 if (tt_local_entry &&
2345 _batadv_is_ap_isolated(tt_local_entry, tt_global_entry))
2359 batadv_tt_local_entry_put(tt_local_entry);
3292 struct batadv_tt_local_entry *tt_local_entry;
3295 tt_local_entry = batadv_tt_local_hash_find(bat_priv, addr, vid);
3296 if (!tt_local_entry)
3301 if ((tt_local_entry->common.flags & BATADV_TT_CLIENT_PENDING) ||
3302 (tt_local_entry->common.flags & BATADV_TT_CLIENT_ROAM))
3306 batadv_tt_local_entry_put(tt_local_entry);
3683 struct batadv_tt_local_entry *tt_local_entry;
3695 tt_local_entry = batadv_tt_local_hash_find(bat_priv, dst, vid);
3696 if (!tt_local_entry)
3703 if (_batadv_is_ap_isolated(tt_local_entry, tt_global_entry))
3708 batadv_tt_local_entry_put(tt_local_entry);
3838 struct batadv_tt_local_entry *tt_local_entry;
3841 tt_local_entry = batadv_tt_local_hash_find(bat_priv, addr, vid);
3842 if (!tt_local_entry)
3845 ret = tt_local_entry->common.flags & BATADV_TT_CLIENT_ROAM;
3846 batadv_tt_local_entry_put(tt_local_entry);