Home
last modified time | relevance | path

Searched refs:xskb (Results 1 – 4 of 4) sorted by relevance

/linux-6.6.21/include/net/
Dxsk_buff_pool.h116 void xp_free(struct xdp_buff_xsk *xskb);
118 static inline void xp_init_xskb_addr(struct xdp_buff_xsk *xskb, struct xsk_buff_pool *pool, in xp_init_xskb_addr() argument
121 xskb->orig_addr = addr; in xp_init_xskb_addr()
122 xskb->xdp.data_hard_start = pool->addrs + addr + pool->headroom; in xp_init_xskb_addr()
125 static inline void xp_init_xskb_dma(struct xdp_buff_xsk *xskb, struct xsk_buff_pool *pool, in xp_init_xskb_dma() argument
128 xskb->frame_dma = (dma_pages[addr >> PAGE_SHIFT] & ~XSK_NEXT_PG_CONTIG_MASK) + in xp_init_xskb_dma()
130 xskb->dma = xskb->frame_dma + pool->headroom + XDP_PACKET_HEADROOM; in xp_init_xskb_dma()
143 static inline dma_addr_t xp_get_dma(struct xdp_buff_xsk *xskb) in xp_get_dma() argument
145 return xskb->dma; in xp_get_dma()
148 static inline dma_addr_t xp_get_frame_dma(struct xdp_buff_xsk *xskb) in xp_get_frame_dma() argument
[all …]
Dxdp_sock_drv.h75 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp); in xsk_buff_xdp_get_dma() local
77 return xp_get_dma(xskb); in xsk_buff_xdp_get_dma()
82 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp); in xsk_buff_xdp_get_frame_dma() local
84 return xp_get_frame_dma(xskb); in xsk_buff_xdp_get_frame_dma()
110 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp); in xsk_buff_free() local
111 struct list_head *xskb_list = &xskb->pool->xskb_list; in xsk_buff_free()
124 xp_free(xskb); in xsk_buff_free()
136 struct xdp_buff_xsk *xskb = container_of(first, struct xdp_buff_xsk, xdp); in xsk_buff_get_frag() local
140 frag = list_first_entry_or_null(&xskb->pool->xskb_list, in xsk_buff_get_frag()
152 struct xdp_buff_xsk *xskb = container_of(tail, struct xdp_buff_xsk, xdp); in xsk_buff_del_tail() local
[all …]
/linux-6.6.21/net/xdp/
Dxsk_buff_pool.c60 struct xdp_buff_xsk *xskb; in xp_create_and_assign_umem() local
99 xskb = &pool->heads[i]; in xp_create_and_assign_umem()
100 xskb->pool = pool; in xp_create_and_assign_umem()
101 xskb->xdp.frame_sz = umem->chunk_size - umem->headroom; in xp_create_and_assign_umem()
102 INIT_LIST_HEAD(&xskb->free_list_node); in xp_create_and_assign_umem()
103 INIT_LIST_HEAD(&xskb->xskb_list_node); in xp_create_and_assign_umem()
105 pool->free_heads[i] = xskb; in xp_create_and_assign_umem()
107 xp_init_xskb_addr(xskb, pool, i * pool->chunk_size); in xp_create_and_assign_umem()
401 struct xdp_buff_xsk *xskb = &pool->heads[i]; in xp_init_dma_info() local
403 xp_init_xskb_dma(xskb, pool, dma_map->dma_pages, xskb->orig_addr); in xp_init_dma_info()
[all …]
Dxsk.c139 static int __xsk_rcv_zc(struct xdp_sock *xs, struct xdp_buff_xsk *xskb, u32 len, in __xsk_rcv_zc() argument
145 addr = xp_get_handle(xskb); in __xsk_rcv_zc()
152 xp_release(xskb); in __xsk_rcv_zc()
158 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp); in xsk_rcv_zc() local
168 err = __xsk_rcv_zc(xs, xskb, len, contd); in xsk_rcv_zc()
174 xskb_list = &xskb->pool->xskb_list; in xsk_rcv_zc()
232 struct xdp_buff_xsk *xskb; in __xsk_rcv() local
249 xskb = container_of(xsk_xdp, struct xdp_buff_xsk, xdp); in __xsk_rcv()
250 err = __xsk_rcv_zc(xs, xskb, len, 0); in __xsk_rcv()
287 xskb = container_of(xsk_xdp, struct xdp_buff_xsk, xdp); in __xsk_rcv()
[all …]