xref: /linux/include/net/xdp_priv.h (revision 7505576d1c1ac0cfe85fdf90999433dd8b673012)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __LINUX_NET_XDP_PRIV_H__
3 #define __LINUX_NET_XDP_PRIV_H__
4 
5 #include <linux/rhashtable.h>
6 
7 /* Private to net/core/xdp.c, but used by trace/events/xdp.h */
8 struct xdp_mem_allocator {
9 	struct xdp_mem_info mem;
10 	union {
11 		void *allocator;
12 		struct page_pool *page_pool;
13 		struct zero_copy_allocator *zc_alloc;
14 	};
15 	int disconnect_cnt;
16 	unsigned long defer_start;
17 	struct rhash_head node;
18 	struct rcu_head rcu;
19 	struct delayed_work defer_wq;
20 	unsigned long defer_warn;
21 };
22 
23 #endif /* __LINUX_NET_XDP_PRIV_H__ */
24