aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/xdp.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/core/xdp.c')
-rw-r--r--net/core/xdp.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/net/core/xdp.c b/net/core/xdp.c
index 0c86b53a3a63..bf6758f74339 100644
--- a/net/core/xdp.c
+++ b/net/core/xdp.c
@@ -308,11 +308,9 @@ err:
308} 308}
309EXPORT_SYMBOL_GPL(xdp_rxq_info_reg_mem_model); 309EXPORT_SYMBOL_GPL(xdp_rxq_info_reg_mem_model);
310 310
311void xdp_return_frame(struct xdp_frame *xdpf) 311static void xdp_return(void *data, struct xdp_mem_info *mem)
312{ 312{
313 struct xdp_mem_info *mem = &xdpf->mem;
314 struct xdp_mem_allocator *xa; 313 struct xdp_mem_allocator *xa;
315 void *data = xdpf->data;
316 struct page *page; 314 struct page *page;
317 315
318 switch (mem->type) { 316 switch (mem->type) {
@@ -339,4 +337,15 @@ void xdp_return_frame(struct xdp_frame *xdpf)
339 break; 337 break;
340 } 338 }
341} 339}
340
341void xdp_return_frame(struct xdp_frame *xdpf)
342{
343 xdp_return(xdpf->data, &xdpf->mem);
344}
342EXPORT_SYMBOL_GPL(xdp_return_frame); 345EXPORT_SYMBOL_GPL(xdp_return_frame);
346
347void xdp_return_buff(struct xdp_buff *xdp)
348{
349 xdp_return(xdp->data, &xdp->rxq->mem);
350}
351EXPORT_SYMBOL_GPL(xdp_return_buff);