From: Xie Yongji <xieyongji@baidu.com>
We introduced two flags "started" and "start_on_kick" to indicate virtio
device's state before. But there still are some problems with them. So
we try to fixup them in this patchset.
The patch 1 introduces a "use-started" property to avoid a migration
issue under Greg Kurz's suggestion [1].
The patch 2 set "start_on_kick" flag for legacy devices.
The patch 3 fixes a regression bug that old guest is not able to boot with
vhost-user-blk device.
The patch 4,5 fix some problems with "started" and "start_on_kick" flag.
[1] https://lists.gnu.org/archive/html/qemu-devel/2019-05/msg06247.html
v3:
- change the order of patches
- Also disable "use-started" property by hw_compat_4_0
v2:
- Recalculate "start_on_kick" flag after migration instead of migrating
it
- Set "start_on_kick" flag for legacy devices
- Avoid setting "started" flag when "use_started" property is true
- Set "use_started" to false by hw_compat_4_0_1 instead of hw_compat_4_0
Xie Yongji (5):
virtio: add "use-started" property
virtio: Set "start_on_kick" for legacy devices
virtio: Set "start_on_kick" on virtio_set_features()
virtio: Make sure we get correct state of device on
handle_aio_output()
virtio: Don't change "started" flag on virtio_vmstate_change()
hw/block/vhost-user-blk.c | 4 +--
hw/core/machine.c | 8 ++++--
hw/virtio/virtio.c | 53 ++++++++++++++++++++++----------------
include/hw/virtio/virtio.h | 23 ++++++++++++++++-
4 files changed, 61 insertions(+), 27 deletions(-)
--
2.17.1