On Fri, Sep 22, 2017 at 1:49 PM, Petar Penkov <[email protected]> wrote: > Changes TUN driver to use napi_gro_receive() upon receiving packets > rather than netif_rx_ni(). Adds flag IFF_NAPI that enables these > changes and operation is not affected if the flag is disabled. SKBs > are constructed upon packet arrival and are queued to be processed > later. > > The new path was evaluated with a benchmark with the following setup: > Open two tap devices and a receiver thread that reads in a loop for > each device. Start one sender thread and pin all threads to different > CPUs. Send 1M minimum UDP packets to each device and measure sending > time for each of the sending methods: > napi_gro_receive(): 4.90s > netif_rx_ni(): 4.90s > netif_receive_skb(): 7.20s > > Signed-off-by: Petar Penkov <[email protected]>
Thank you Petar. Acked-by: Mahesh Bandewar <[email protected]> > Cc: Eric Dumazet <[email protected]> > Cc: Mahesh Bandewar <[email protected]> > Cc: Willem de Bruijn <[email protected]> > Cc: [email protected] > Cc: [email protected] > --- > drivers/net/tun.c | 133 > +++++++++++++++++++++++++++++++++++++++----- > include/uapi/linux/if_tun.h | 1 + > 2 files changed, 119 insertions(+), 15 deletions(-) >
