virtio_net: disable cb aggressively
authorMichael S. Tsirkin <mst@redhat.com>
Tue, 13 Apr 2021 05:30:45 +0000 (01:30 -0400)
committerMichael S. Tsirkin <mst@redhat.com>
Thu, 8 Jul 2021 11:49:01 +0000 (07:49 -0400)
commita7766ef18b33674fa164e2e2916cef16d4e17f43
treebaa7ea0cb6c7e6e6439fb32ef7f52efb473c387f
parent8d622d21d24803408b256d96463eac4574dcf067
virtio_net: disable cb aggressively

There are currently two cases where we poll TX vq not in response to a
callback: start xmit and rx napi.  We currently do this with callbacks
enabled which can cause extra interrupts from the card.  Used not to be
a big issue as we run with interrupts disabled but that is no longer the
case, and in some cases the rate of spurious interrupts is so high
linux detects this and actually kills the interrupt.

Fix up by disabling the callbacks before polling the tx vq.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/net/virtio_net.c