Patchwork [PATCHv3,2/2] vhost: disable on tap link down

login
register
mail settings
Submitter Michael S. Tsirkin
Date Feb. 9, 2011, 4:45 p.m.
Message ID <0b4378b01430b620069407a3ffd8dce6ecbbe343.1297269881.git.mst@redhat.com>
Download mbox | patch
Permalink /patch/82500/
State New
Headers show

Comments

Michael S. Tsirkin - Feb. 9, 2011, 4:45 p.m.
qemu makes it possible to disable link at tap
which is not communicated to the guest but
causes all packets to be dropped.

When vhost-net is enabled, vhost needs to be aware of both the virtio
link_down and the peer link_down. we switch to userspace emulation when
either is down.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reported-by: pradeep <psuriset@linux.vnet.ibm.com>
---
 hw/virtio-net.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

Patch

diff --git a/hw/virtio-net.c b/hw/virtio-net.c
index 671d952..20cf680 100644
--- a/hw/virtio-net.c
+++ b/hw/virtio-net.c
@@ -115,7 +115,8 @@  static void virtio_net_vhost_status(VirtIONet *n, uint8_t status)
     if (!tap_get_vhost_net(n->nic->nc.peer)) {
         return;
     }
-    if (!!n->vhost_started == virtio_net_started(n, status)) {
+    if (!!n->vhost_started == virtio_net_started(n, status) &&
+                              !n->nic->nc.peer->link_down) {
         return;
     }
     if (!n->vhost_started) {