[libvirt] [Qemu-devel] [PATCH v2 0/2] Add machine type pc-1.0-qemu-kvm for live migrate compatibility with qemu-kvm

Alex Bligh alex at alex.org.uk
Mon Aug 4 16:11:11 UTC 2014


Michael,

On 4 Aug 2014, at 15:26, Michael S. Tsirkin <mst at redhat.com> wrote:

>> 
>> Unless I'm missing what you are saying?
> 
> I think you are: check how vmstate_test_use_acpi_pci_hotplug
> and vmstate_test_no_use_acpi_pci_hotplug are used
> in vmstate_acpi.

I /think/ you are talking about using the VMSTATE_FOO_TEST
macros.

These are capable of modifying fields within the
VMStateDescription of the relevant object.

However, the PIIX4 change modifies the minimum_version_id
(outside fields); I don't quite see how that would work.
Can you help here?

The i8254 change modifies a field which is marked with
a minimum version to be a field with no versioning; I
guess the route there would be a test function that
(somehow) accesses the version of the inbound migration
inside it, does the comparison manually, and returns
1 if EITHER the inbound version >=3 or the compatibility
thing is set.

Is that what you meant? I'm rather new to this so
you may have to lead me a little - apologies.

I was trying to produce code which would be 'obviously
correct' in the sense of not breaking the existing pc-1.0
migrations; if playing around with the existing vmstate
fields is permissible then clearly I have a few more
degrees of freedom.

I did try modifying the objects live after the command
line has been parsed; this doesn't work because the
QOM inheritance memcpy's the structs for classes derived
from i8254 etc.

-- 
Alex Bligh







More information about the libvir-list mailing list