On Thu, 17 Jan 2019 20:56:39 +0800
Jason Wang <jasow...@redhat.com> wrote:

> On 2019/1/17 下午7:20, Toshiaki Makita wrote:
> > 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 <makita.toshi...@lab.ntt.co.jp>
> > ---
> >   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.

> >             }
> >     }
> >     
> 
> 
> Acked-by: Jason Wang <jasow...@redhat.com>

Acked-by: Jesper Dangaard Brouer <bro...@redhat.com>

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer

Reply via email to