Hi all: This series tries to implement XDP transmission (ndo_xdp_xmit) for tuntap. Pointer ring was used for queuing both XDP buffers and sk_buff, this is done by encoding the type into lowest bit of the pointer and storin XDP metadata in the headroom of XDP buff.
Tests gets 3.05 Mpps when doing xdp_redirect_map from ixgbe to VM (testpmd + virtio-net in guest). This gives us ~20% improvments compared to use skb during redirect. Please review. Changes from V1: - slient warnings - fix typos - add skb mode number in the commit log Jason Wang (2): tun/tap: use ptr_ring instead of skb_array tuntap: XDP transmission drivers/net/tap.c | 41 ++++----- drivers/net/tun.c | 239 +++++++++++++++++++++++++++++++++++++++---------- drivers/vhost/net.c | 52 ++++++----- include/linux/if_tap.h | 6 +- include/linux/if_tun.h | 21 ++++- 5 files changed, 269 insertions(+), 90 deletions(-) -- 2.7.4