aboutsummaryrefslogtreecommitdiff
path: root/hw/virtio-net.c
diff options
context:
space:
mode:
authorAmos Kong <akong@redhat.com>2012-09-28 10:06:02 +0800
committerStefan Hajnoczi <stefanha@redhat.com>2012-10-08 13:59:40 +0200
commit9899148110627da388f82c02997bca6d678d1aa1 (patch)
treee24d881366e6ea99b351972b81c05e029763ad87 /hw/virtio-net.c
parente4b823644044de1b8070fde82d0aad8053dc3333 (diff)
downloadqemu-9899148110627da388f82c02997bca6d678d1aa1.zip
qemu-9899148110627da388f82c02997bca6d678d1aa1.tar.gz
qemu-9899148110627da388f82c02997bca6d678d1aa1.tar.bz2
virtio-net: update nc.link_down in virtio_net_load()
nc.link_down could not be migrated, this patch updates link_down in virtio_post_load() to keep it coincident with real link status. Signed-off-by: Amos Kong <akong@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
Diffstat (limited to 'hw/virtio-net.c')
-rw-r--r--hw/virtio-net.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/virtio-net.c b/hw/virtio-net.c
index 247d7be..8342391 100644
--- a/hw/virtio-net.c
+++ b/hw/virtio-net.c
@@ -973,6 +973,11 @@ static int virtio_net_load(QEMUFile *f, void *opaque, int version_id)
}
}
n->mac_table.first_multi = i;
+
+ /* nc.link_down can't be migrated, so infer link_down according
+ * to link status bit in n->status */
+ n->nic->nc.link_down = (n->status & VIRTIO_NET_S_LINK_UP) == 0;
+
return 0;
}