Lines Matching refs:tt_req_node
2801 struct batadv_tt_req_node *tt_req_node;
2803 tt_req_node = container_of(ref, struct batadv_tt_req_node, refcount);
2805 kmem_cache_free(batadv_tt_req_cache, tt_req_node);
2809 * batadv_tt_req_node_put() - decrement the tt_req_node refcounter and
2811 * @tt_req_node: tt_req_node to be free'd
2813 static void batadv_tt_req_node_put(struct batadv_tt_req_node *tt_req_node)
2815 if (!tt_req_node)
2818 kref_put(&tt_req_node->refcount, batadv_tt_req_node_release);
2874 * batadv_tt_req_node_new() - search and possibly create a tt_req_node object
2878 * Return: the pointer to the new tt_req_node struct if no request
2885 struct batadv_tt_req_node *tt_req_node_tmp, *tt_req_node = NULL;
2895 tt_req_node = kmem_cache_alloc(batadv_tt_req_cache, GFP_ATOMIC);
2896 if (!tt_req_node)
2899 kref_init(&tt_req_node->refcount);
2900 ether_addr_copy(tt_req_node->addr, orig_node->orig);
2901 tt_req_node->issued_at = jiffies;
2903 kref_get(&tt_req_node->refcount);
2904 hlist_add_head(&tt_req_node->list, &bat_priv->tt.req_list);
2907 return tt_req_node;
3148 struct batadv_tt_req_node *tt_req_node = NULL;
3161 tt_req_node = batadv_tt_req_node_new(bat_priv, dst_orig_node);
3162 if (!tt_req_node)
3202 if (ret && tt_req_node) {
3204 if (!hlist_unhashed(&tt_req_node->list)) {
3205 hlist_del_init(&tt_req_node->list);
3206 batadv_tt_req_node_put(tt_req_node);
3211 if (tt_req_node)
3212 batadv_tt_req_node_put(tt_req_node);
3643 /* Delete the tt_req_node from pending tt_requests list */