virtio-net: disable NAPI only when enabled during XDP set
authorJason Wang <jasowang@redhat.com>
Wed, 28 Feb 2018 10:20:04 +0000 (18:20 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 28 Feb 2018 17:21:28 +0000 (12:21 -0500)
commit4e09ff5362843dff3accfa84c805c7f3a99de9cd
tree6eda8e0091096748c423afe665a547814dc75aee
parentecc832758a654e375924ebf06a4ac971acb5ce60
virtio-net: disable NAPI only when enabled during XDP set

We try to disable NAPI to prevent a single XDP TX queue being used by
multiple cpus. But we don't check if device is up (NAPI is enabled),
this could result stall because of infinite wait in
napi_disable(). Fixing this by checking device state through
netif_running() before.

Fixes: 4941d472bf95b ("virtio-net: do not reset during XDP set")
Signed-off-by: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/virtio_net.c