diff options
Diffstat (limited to 'net/core/xdp.c')
-rw-r--r-- | net/core/xdp.c | 15 |
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 | } |
309 | EXPORT_SYMBOL_GPL(xdp_rxq_info_reg_mem_model); | 309 | EXPORT_SYMBOL_GPL(xdp_rxq_info_reg_mem_model); |
310 | 310 | ||
311 | void xdp_return_frame(struct xdp_frame *xdpf) | 311 | static 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 | |||
341 | void xdp_return_frame(struct xdp_frame *xdpf) | ||
342 | { | ||
343 | xdp_return(xdpf->data, &xdpf->mem); | ||
344 | } | ||
342 | EXPORT_SYMBOL_GPL(xdp_return_frame); | 345 | EXPORT_SYMBOL_GPL(xdp_return_frame); |
346 | |||
347 | void xdp_return_buff(struct xdp_buff *xdp) | ||
348 | { | ||
349 | xdp_return(xdp->data, &xdp->rxq->mem); | ||
350 | } | ||
351 | EXPORT_SYMBOL_GPL(xdp_return_buff); | ||