]> git.baikalelectronics.ru Git - kernel.git/commit
virtio-net: refill only when device is up during setting queues
authorJason Wang <jasowang@redhat.com>
Tue, 15 Oct 2013 03:18:59 +0000 (11:18 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Oct 2013 19:53:09 +0000 (15:53 -0400)
commit769f62a5d51f49846f65af0e9297074584f50e57
tree08d5bade9d21d2457bcc1e19651b16106cafc582
parentb2028fddafecd5deba61025c65e3fb5723f7ea8c
virtio-net: refill only when device is up during setting queues

We used to schedule the refill work unconditionally after changing the
number of queues. This may lead an issue if the device is not
up. Since we only try to cancel the work in ndo_stop(), this may cause
the refill work still work after removing the device. Fix this by only
schedule the work when device is up.

The bug were introduce by commit d8caa2a3773fd6f8cde0c065fbf084be4b8e3670.
(virtio-net: fix the race between channels setting and refill)

Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/virtio_net.c