Thread (24 messages) 24 messages, 4 authors, 2019-01-18

Re: [PATCH net 6/7] virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs

From: Jesper Dangaard Brouer <hidden>
Date: 2019-01-17 13:39:24

On Thu, 17 Jan 2019 20:56:39 +0800
Jason Wang [off-list ref] wrote:
On 2019/1/17 下午7:20, Toshiaki Makita wrote:
quoted
put_page() can work as a fallback for freeing xdp_frames, but the
appropriate way is to use xdp_return_frame().

Fixes: cac320c850ef ("virtio_net: convert to use generic xdp_frame and xdp_return_frame API")
Signed-off-by: Toshiaki Makita <redacted>
---
  drivers/net/virtio_net.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index ae93f0e..996de69 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -2668,7 +2668,7 @@ static void free_unused_bufs(struct virtnet_info *vi)
  			if (!is_xdp_raw_buffer_queue(vi, i))
  				dev_kfree_skb(buf);
  			else
-				put_page(virt_to_head_page(buf));
+				xdp_return_frame(buf);
I assume the is_xdp_raw_buffer_queue() test assures that this void *buf
is a struct xdp_frame.
quoted
  		}
  	}
    

Acked-by: Jason Wang <jasowang@redhat.com>
Acked-by: Jesper Dangaard Brouer <redacted>

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help