On Wed, Nov 23, 2022 at 03:21:32PM +0000, Alex Bennée wrote: > Hi, > > This hopefully fixes the problems with VirtIO migration caused by the > previous refactoring of virtio_device_started(). That introduced a > different order of checking which didn't give the VM state primacy but > wasn't noticed as we don't properly exercise VirtIO device migration > and caused issues when dev->started wasn't checked in the core code. > The introduction of virtio_device_should_start() split the overloaded > function up but the broken order still remained. The series finally > fixes that by restoring the original semantics but with the cleaned up > functions. > > I've added more documentation to the various structures involved as > well as the functions. There is still some inconsistencies in the > VirtIO code between different devices but I think that can be looked > at over the 8.0 cycle.
Thanks a lot! Did you try this with gitlab CI? A patch similar to your 2/2 broke it previously ... > Alex Bennée (2): > include/hw: attempt to document VirtIO feature variables > include/hw: VM state takes precedence in virtio_device_should_start > > include/hw/virtio/vhost.h | 25 +++++++++++++++++++--- > include/hw/virtio/virtio.h | 43 ++++++++++++++++++++++++++++++++------ > 2 files changed, 59 insertions(+), 9 deletions(-) > > -- > 2.34.1