Re: [PATCH v2 net 7/7] virtio_net: Differentiate sk_buff and xdp_frame on freeing

2019-01-29 Thread Michael S. Tsirkin
On Tue, Jan 29, 2019 at 09:45:59AM +0900, Toshiaki Makita wrote: > We do not reset or free up unused buffers when enabling/disabling XDP, > so it can happen that xdp_frames are freed after disabling XDP or > sk_buffs are freed after enabling XDP on xdp tx queues. > Thus we need to handle both forms

Re: [PATCH v2 net 7/7] virtio_net: Differentiate sk_buff and xdp_frame on freeing

2019-01-28 Thread Jason Wang
On 2019/1/29 上午10:35, Toshiaki Makita wrote: On 2019/01/29 11:23, Jason Wang wrote: On 2019/1/29 上午8:45, Toshiaki Makita wrote: ... @@ -2666,10 +2696,10 @@ static void free_unused_bufs(struct virtnet_info *vi)   for (i = 0; i < vi->max_queue_pairs; i++) {   struct virtqueue *vq

Re: [PATCH v2 net 7/7] virtio_net: Differentiate sk_buff and xdp_frame on freeing

2019-01-28 Thread Toshiaki Makita
On 2019/01/29 11:23, Jason Wang wrote: > On 2019/1/29 上午8:45, Toshiaki Makita wrote: ... >> @@ -2666,10 +2696,10 @@ static void free_unused_bufs(struct >> virtnet_info *vi) >>   for (i = 0; i < vi->max_queue_pairs; i++) { >>   struct virtqueue *vq = vi->sq[i].vq; >>   while ((bu

Re: [PATCH v2 net 7/7] virtio_net: Differentiate sk_buff and xdp_frame on freeing

2019-01-28 Thread Jason Wang
On 2019/1/29 上午8:45, Toshiaki Makita wrote: We do not reset or free up unused buffers when enabling/disabling XDP, so it can happen that xdp_frames are freed after disabling XDP or sk_buffs are freed after enabling XDP on xdp tx queues. Thus we need to handle both forms (xdp_frames and sk_buffs

[PATCH v2 net 7/7] virtio_net: Differentiate sk_buff and xdp_frame on freeing

2019-01-28 Thread Toshiaki Makita
We do not reset or free up unused buffers when enabling/disabling XDP, so it can happen that xdp_frames are freed after disabling XDP or sk_buffs are freed after enabling XDP on xdp tx queues. Thus we need to handle both forms (xdp_frames and sk_buffs) regardless of XDP setting. One way to trigger