[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 17/22] virtio: Don't change "started" flag on virtio_
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 17/22] virtio: Don't change "started" flag on virtio_vmstate_change() |
Date: |
Tue, 2 Jul 2019 11:08:09 -0400 |
From: Xie Yongji <address@hidden>
We will call virtio_set_status() on virtio_vmstate_change().
The "started" flag should not be changed in this case. Otherwise,
we may get an incorrect value when we set "started" flag but
not set DRIVER_OK in source VM.
Signed-off-by: Xie Yongji <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
hw/virtio/virtio.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
index e098fc8ef0..18f9f4c372 100644
--- a/hw/virtio/virtio.c
+++ b/hw/virtio/virtio.c
@@ -1163,7 +1163,10 @@ int virtio_set_status(VirtIODevice *vdev, uint8_t val)
}
}
- virtio_set_started(vdev, val & VIRTIO_CONFIG_S_DRIVER_OK);
+ if ((vdev->status & VIRTIO_CONFIG_S_DRIVER_OK) !=
+ (val & VIRTIO_CONFIG_S_DRIVER_OK)) {
+ virtio_set_started(vdev, val & VIRTIO_CONFIG_S_DRIVER_OK);
+ }
if (k->set_status) {
k->set_status(vdev, val);
--
MST
- [Qemu-devel] [PULL 10/22] numa: Handle virtio-pmem in NUMA stats, (continued)
- [Qemu-devel] [PULL 10/22] numa: Handle virtio-pmem in NUMA stats, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 09/22] hmp: Handle virtio-pmem when printing memory device infos, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 11/22] pc: Support for virtio-pmem-pci, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 12/22] virtio-pci: fix missing device properties, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 13/22] virtio: add "use-started" property, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 14/22] virtio: Set "start_on_kick" for legacy devices, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 15/22] virtio: Set "start_on_kick" on virtio_set_features(), Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 16/22] virtio: Make sure we get correct state of device on handle_aio_output(), Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 17/22] virtio: Don't change "started" flag on virtio_vmstate_change(),
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 18/22] pc: Move compat_apic_id_mode variable to PCMachineClass, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 19/22] libvhost-user: add vmsg_set_reply_u64() helper, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 20/22] libvhost-user: support many virtqueues, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 21/22] libvhost-user: implement VHOST_USER_PROTOCOL_F_MQ, Michael S. Tsirkin, 2019/07/02
- [Qemu-devel] [PULL 22/22] docs: avoid vhost-user-net specifics in multiqueue section, Michael S. Tsirkin, 2019/07/02
- Re: [Qemu-devel] [PULL 00/22] virtio, pc, pci: features, fixes, cleanups, Peter Maydell, 2019/07/02
- Re: [Qemu-devel] [PULL 00/22] virtio, pc, pci: features, fixes, cleanups, Michael S. Tsirkin, 2019/07/02
- Re: [Qemu-devel] [PULL 00/22] virtio, pc, pci: features, fixes, cleanups, Peter Maydell, 2019/07/02
- Re: [Qemu-devel] [PULL 00/22] virtio, pc, pci: features, fixes, cleanups, Michael S. Tsirkin, 2019/07/02
- Re: [Qemu-devel] [PULL 00/22] virtio, pc, pci: features, fixes, cleanups, Peter Maydell, 2019/07/02