Lines Matching refs:xskb
118 void xp_free(struct xdp_buff_xsk *xskb);
120 static inline void xp_init_xskb_addr(struct xdp_buff_xsk *xskb, struct xsk_buff_pool *pool, in xp_init_xskb_addr() argument
123 xskb->orig_addr = addr; in xp_init_xskb_addr()
124 xskb->xdp.data_hard_start = pool->addrs + addr + pool->headroom; in xp_init_xskb_addr()
127 static inline void xp_init_xskb_dma(struct xdp_buff_xsk *xskb, struct xsk_buff_pool *pool, in xp_init_xskb_dma() argument
130 xskb->frame_dma = (dma_pages[addr >> PAGE_SHIFT] & ~XSK_NEXT_PG_CONTIG_MASK) + in xp_init_xskb_dma()
132 xskb->dma = xskb->frame_dma + pool->headroom + XDP_PACKET_HEADROOM; in xp_init_xskb_dma()
146 static inline dma_addr_t xp_get_dma(struct xdp_buff_xsk *xskb) in xp_get_dma() argument
148 return xskb->dma; in xp_get_dma()
151 static inline dma_addr_t xp_get_frame_dma(struct xdp_buff_xsk *xskb) in xp_get_frame_dma() argument
153 return xskb->frame_dma; in xp_get_frame_dma()
156 static inline void xp_dma_sync_for_cpu(struct xdp_buff_xsk *xskb) in xp_dma_sync_for_cpu() argument
158 dma_sync_single_for_cpu(xskb->pool->dev, xskb->dma, in xp_dma_sync_for_cpu()
159 xskb->pool->frame_len, in xp_dma_sync_for_cpu()
219 static inline void xp_release(struct xdp_buff_xsk *xskb) in xp_release() argument
221 if (xskb->pool->unaligned) in xp_release()
222 xskb->pool->free_heads[xskb->pool->free_heads_cnt++] = xskb; in xp_release()
225 static inline u64 xp_get_handle(struct xdp_buff_xsk *xskb) in xp_get_handle() argument
227 u64 offset = xskb->xdp.data - xskb->xdp.data_hard_start; in xp_get_handle()
229 offset += xskb->pool->headroom; in xp_get_handle()
230 if (!xskb->pool->unaligned) in xp_get_handle()
231 return xskb->orig_addr + offset; in xp_get_handle()
232 return xskb->orig_addr + (offset << XSK_UNALIGNED_BUF_OFFSET_SHIFT); in xp_get_handle()