Lines Matching refs:tt_req_node
2522 struct batadv_tt_req_node *tt_req_node; in batadv_tt_req_node_release() local
2524 tt_req_node = container_of(ref, struct batadv_tt_req_node, refcount); in batadv_tt_req_node_release()
2526 kmem_cache_free(batadv_tt_req_cache, tt_req_node); in batadv_tt_req_node_release()
2534 static void batadv_tt_req_node_put(struct batadv_tt_req_node *tt_req_node) in batadv_tt_req_node_put() argument
2536 if (!tt_req_node) in batadv_tt_req_node_put()
2539 kref_put(&tt_req_node->refcount, batadv_tt_req_node_release); in batadv_tt_req_node_put()
2606 struct batadv_tt_req_node *tt_req_node_tmp, *tt_req_node = NULL; in batadv_tt_req_node_new() local
2616 tt_req_node = kmem_cache_alloc(batadv_tt_req_cache, GFP_ATOMIC); in batadv_tt_req_node_new()
2617 if (!tt_req_node) in batadv_tt_req_node_new()
2620 kref_init(&tt_req_node->refcount); in batadv_tt_req_node_new()
2621 ether_addr_copy(tt_req_node->addr, orig_node->orig); in batadv_tt_req_node_new()
2622 tt_req_node->issued_at = jiffies; in batadv_tt_req_node_new()
2624 kref_get(&tt_req_node->refcount); in batadv_tt_req_node_new()
2625 hlist_add_head(&tt_req_node->list, &bat_priv->tt.req_list); in batadv_tt_req_node_new()
2628 return tt_req_node; in batadv_tt_req_node_new()
2873 struct batadv_tt_req_node *tt_req_node = NULL; in batadv_send_tt_request() local
2885 tt_req_node = batadv_tt_req_node_new(bat_priv, dst_orig_node); in batadv_send_tt_request()
2886 if (!tt_req_node) in batadv_send_tt_request()
2923 if (ret && tt_req_node) { in batadv_send_tt_request()
2925 if (!hlist_unhashed(&tt_req_node->list)) { in batadv_send_tt_request()
2926 hlist_del_init(&tt_req_node->list); in batadv_send_tt_request()
2927 batadv_tt_req_node_put(tt_req_node); in batadv_send_tt_request()
2932 batadv_tt_req_node_put(tt_req_node); in batadv_send_tt_request()