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