Re: [PATCH -next v3] virtio_ring: Avoid loop when vq is broken in virtqueue_poll

2020-08-03 Thread Jason Wang
On 2020/8/2 下午3:44, Mao Wenan wrote: The loop may exist if vq->broken is true, virtqueue_get_buf_ctx_packed or virtqueue_get_buf_ctx_split will return NULL, so virtnet_poll will reschedule napi to receive packet, it will lead cpu usage(si) to 100%. call trace as below: virtnet_poll vir

[PATCH -next v3] virtio_ring: Avoid loop when vq is broken in virtqueue_poll

2020-08-02 Thread Mao Wenan
The loop may exist if vq->broken is true, virtqueue_get_buf_ctx_packed or virtqueue_get_buf_ctx_split will return NULL, so virtnet_poll will reschedule napi to receive packet, it will lead cpu usage(si) to 100%. call trace as below: virtnet_poll virtnet_receive virtqueue_ge