From: Willem de Bruijn <willemdebruijn.ker...@gmail.com> Date: Fri, 6 Oct 2017 18:25:13 -0400
> From: Willem de Bruijn <will...@google.com> > > Add zerocopy transfer statistics to the vhost_net/tun zerocopy path. > > I've been using this to verify recent changes to zerocopy tuning [1]. > Sharing more widely, as it may be useful in similar future work. > > Use ethtool stats as interface, as these are defined per device > driver and can easily be extended. > > Make the zerocopy release callback take an extra hop through the tun > driver to allow the driver to increment its counters. > > Care must be taken to avoid adding an alloc/free to this hot path. > Since the caller already must allocate a ubuf_info, make it allocate > two at a time and grant one to the tun device. > > 1/3: introduce ethtool stats (`ethtool -S $DEV`) for tun devices > 2/3: add zerocopy tx and tx_err counters > 3/3: convert vhost_net to pass a pair of ubuf_info to tun > > [1] http://patchwork.ozlabs.org/patch/822613/ This looks mostly fine to me, but I don't know enough about how vhost and tap interact to tell whether this makes sense to upstream. What are the runtime costs for these new statistics?