Re: [PATCH netdev 0/5] virtio-net support xdp socket zero copy xmit

From: Michael S. Tsirkin
Date: Tue Jan 05 2021 - 07:26:55 EST


On Tue, Jan 05, 2021 at 05:11:38PM +0800, Xuan Zhuo wrote:
> The first patch made some adjustments to xsk.
>
> The second patch itself can be used as an independent patch to solve the problem
> that XDP may fail to load when the number of queues is insufficient.
>
> The third to last patch implements support for xsk in virtio-net.
>
> A practical problem with virtio is that tx interrupts are not very reliable.
> There will always be some missing or delayed tx interrupts.

Would appreciate a bit more data on this one. Is this a host bug? Device bug?
Can we limit the work around somehow?

> So I specially added
> a point timer to solve this problem. Of course, considering performance issues,
> The timer only triggers when the ring of the network card is full.
>
> Regarding the issue of virtio-net supporting xsk's zero copy rx, I am also
> developing it, but I found that the modification may be relatively large, so I
> consider this patch set to be separated from the code related to xsk zero copy
> rx.
>
> Xuan Zhuo (5):
> xsk: support get page for drv
> virtio-net: support XDP_TX when not more queues
> virtio-net, xsk: distinguish XDP_TX and XSK XMIT ctx
> xsk, virtio-net: prepare for support xsk
> virtio-net, xsk: virtio-net support xsk zero copy tx
>
> drivers/net/virtio_net.c | 643 +++++++++++++++++++++++++++++++++++++++-----
> include/linux/netdevice.h | 1 +
> include/net/xdp_sock_drv.h | 10 +
> include/net/xsk_buff_pool.h | 1 +
> net/xdp/xsk_buff_pool.c | 10 +-
> 5 files changed, 597 insertions(+), 68 deletions(-)
>
> --
> 1.8.3.1