From: Xie Yongji <xieyon...@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