Lines Matching refs:xa
55 const struct xdp_mem_allocator *xa = ptr; in xdp_mem_id_cmp() local
58 return xa->mem.id != mem_id; in xdp_mem_id_cmp()
75 struct xdp_mem_allocator *xa; in __xdp_mem_allocator_rcu_free() local
77 xa = container_of(rcu, struct xdp_mem_allocator, rcu); in __xdp_mem_allocator_rcu_free()
80 ida_free(&mem_id_pool, xa->mem.id); in __xdp_mem_allocator_rcu_free()
82 kfree(xa); in __xdp_mem_allocator_rcu_free()
85 static void mem_xa_remove(struct xdp_mem_allocator *xa) in mem_xa_remove() argument
87 trace_mem_disconnect(xa); in mem_xa_remove()
89 if (!rhashtable_remove_fast(mem_id_ht, &xa->node, mem_id_rht_params)) in mem_xa_remove()
90 call_rcu(&xa->rcu, __xdp_mem_allocator_rcu_free); in mem_xa_remove()
95 struct xdp_mem_allocator *xa; in mem_allocator_disconnect() local
104 while ((xa = rhashtable_walk_next(&iter)) && !IS_ERR(xa)) { in mem_allocator_disconnect()
105 if (xa->allocator == allocator) in mem_allocator_disconnect()
106 mem_xa_remove(xa); in mem_allocator_disconnect()
111 } while (xa == ERR_PTR(-EAGAIN)); in mem_allocator_disconnect()
119 struct xdp_mem_allocator *xa; in xdp_unreg_mem_model() local
131 xa = rhashtable_lookup_fast(mem_id_ht, &id, mem_id_rht_params); in xdp_unreg_mem_model()
132 page_pool_destroy(xa->page_pool); in xdp_unreg_mem_model()