[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 05/37] virtio: Use started flag in virtio_vmstate_cha
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 05/37] virtio: Use started flag in virtio_vmstate_change() |
Date: |
Thu, 16 May 2019 08:18:14 -0400 |
From: Xie Yongji <address@hidden>
Currently, we use DRIVER_OK status bit to check whether guest
driver has started the device in virtio_vmstate_change(). But it's
not the case for virtio 1.0 transitional devices. If migration completes
between kicking virtqueue and setting VIRTIO_CONFIG_S_DRIVER_OK, guest
may be hung. So here we use started flag to check guest state instead.
Signed-off-by: Xie Yongji <address@hidden>
Signed-off-by: Zhang Yu <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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
index af7b59b4ae..b8d36cd4b7 100644
--- a/hw/virtio/virtio.c
+++ b/hw/virtio/virtio.c
@@ -2291,7 +2291,7 @@ static void virtio_vmstate_change(void *opaque, int
running, RunState state)
VirtIODevice *vdev = opaque;
BusState *qbus = qdev_get_parent_bus(DEVICE(vdev));
VirtioBusClass *k = VIRTIO_BUS_GET_CLASS(qbus);
- bool backend_run = running && (vdev->status & VIRTIO_CONFIG_S_DRIVER_OK);
+ bool backend_run = running && vdev->started;
vdev->vm_running = running;
if (backend_run) {
--
MST
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, (continued)
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, David Gibson, 2019/05/27
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Greg Kurz, 2019/05/28
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Dr. David Alan Gilbert, 2019/05/29
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Greg Kurz, 2019/05/29
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Dr. David Alan Gilbert, 2019/05/29
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Greg Kurz, 2019/05/29
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Dr. David Alan Gilbert, 2019/05/29
- Re: [Qemu-devel] [PULL v2 04/36] virtio: Introduce started flag to VirtioDevice, Yongji Xie, 2019/05/29
[Qemu-devel] [PULL 05/37] virtio: Use started flag in virtio_vmstate_change(),
Michael S. Tsirkin <=
[Qemu-devel] [PULL 06/37] vhost-user-blk: Use started flag in vhost_user_blk_set_status(), Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 07/37] vhost-user-blk: Only start vhost-user backend with the first kick, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 08/37] vhost-user-blk: Add return value for vhost_user_blk_start(), Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 09/37] vhost-user-blk: Add support to reconnect backend, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 10/37] contrib/vhost-user-blk: enable inflight I/O tracking, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 11/37] acpi/piix4: Convert debug printf()s to trace events, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 12/37] acpi/pcihp: Convert debug printf()s to trace events, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 13/37] acpi/pcihp: Add a few more trace points related to unplug, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 14/37] q35: acpi: do not create dummy MCFG table, Michael S. Tsirkin, 2019/05/16
[Qemu-devel] [PULL 15/37] do not call vhost_net_cleanup() on running net from char user event, Michael S. Tsirkin, 2019/05/16