Searched hist:b92f1e6751a6aaaf0b1e05128661ce0f23ed3695 (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/net/ |
H A D | virtio_net.c | diff b92f1e6751a6aaaf0b1e05128661ce0f23ed3695 Mon Apr 24 12:49:27 CDT 2017 Willem de Bruijn <willemb@google.com> virtio-net: transmit napi
Convert virtio-net to a standard napi tx completion path. This enables better TCP pacing using TCP small queues and increases single stream throughput.
The virtio-net driver currently cleans tx descriptors on transmission of new packets in ndo_start_xmit. Latency depends on new traffic, so is unbounded. To avoid deadlock when a socket reaches its snd limit, packets are orphaned on tranmission. This breaks socket backpressure, including TSQ.
Napi increases the number of interrupts generated compared to the current model, which keeps interrupts disabled as long as the ring has enough free descriptors. Keep tx napi optional and disabled for now. Follow-on patches will reduce the interrupt cost.
Signed-off-by: Willem de Bruijn <willemb@google.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
|