Krumme, Chris wrote:
-----Original Message-----
From:
address@hidden
[mailto:address@hidden
rg] On Behalf Of Alex Williamson
Sent: Wednesday, January 07, 2009 11:38 AM
To: kvm; qemu-devel
Cc: Mark McLoughlin
Subject: [Qemu-devel] [PATCH 2/5][RFC] virtio-net: Add
load/save for statusbits
virtio-net: Add load/save for status bits
Signed-off-by: Alex Williamson <address@hidden>
---
hw/virtio-net.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/hw/virtio-net.c b/hw/virtio-net.c
index bfb7510..77e3077 100644
--- a/hw/virtio-net.c
+++ b/hw/virtio-net.c
@@ -16,6 +16,8 @@
#include "qemu-timer.h"
#include "virtio-net.h"
+#define VIRTIO_VM_VERSION 2
+
typedef struct VirtIONet
{
VirtIODevice vdev;
@@ -307,13 +309,14 @@ static void virtio_net_save(QEMUFile
*f, void *opaque)
qemu_put_buffer(f, n->mac, 6);
qemu_put_be32(f, n->tx_timer_active);
+ qemu_put_be16(f, n->status);
}
static int virtio_net_load(QEMUFile *f, void *opaque, int version_id)
{
VirtIONet *n = opaque;
- if (version_id != 1)
+ if (version_id < 1 || version_id > VIRTIO_VM_VERSION)
return -EINVAL;
virtio_load(&n->vdev, f);
@@ -321,6 +324,9 @@ static int virtio_net_load(QEMUFile *f,
void *opaque, int version_id)
qemu_get_buffer(f, n->mac, 6);
n->tx_timer_active = qemu_get_be32(f);
+ if (version_id >= 2)
+ n->status = qemu_get_be16(f);
+
Hello,
I know this is a late reply, but just thought I would ask:
You have the magic number 2 here, and change it to three in patch 5/5,
should this not be VIRTIO_VM_VERSION? Or a comment about where the
number comes from.
It is the version of the stated saved for virtio net device. The driver
does not
know anything about it. The version number syncs between the source
& destination
qemu. The numbering started with '1' and we increase it each time we
save a new field.
Thanks
Chris
|