At the moment we require vmstate definitions to set minimum_version_id_old to the same value as minimum_version_id if they do not provide a load_state_old handler. Since the load_state_old functionality is required only for a handful of devices that need to retain migration compatibility with a pre-vmstate implementation, this means the bulk of devices have pointless boilerplate. Relax the definition so that minimum_version_id_old is ignored if there is no load_state_old handler. Note that under the old scheme we would segfault if the vmstate specified a minimum_version_id_old that was less than minimum_version_id but did not provide a load_state_old function, and the incoming state specified a version number between minimum_version_id_old and minimum_version_id. Under the new scheme this will just result in our failing the migration. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com> (cherry picked from commit |
||
|---|---|---|
| .. | ||
| qmp | ||
| specs | ||
| atomics.txt | ||
| blkverify.txt | ||
| bootindex.txt | ||
| ccid.txt | ||
| ich9-ehci-uhci.cfg | ||
| libcacard.txt | ||
| live-block-ops.txt | ||
| memory.txt | ||
| migration.txt | ||
| q35-chipset.cfg | ||
| qapi-code-gen.txt | ||
| qdev-device-use.txt | ||
| qemupciserial.inf | ||
| rdma.txt | ||
| spice-port-fqdn.txt | ||
| tracing.txt | ||
| usb-storage.txt | ||
| usb2.txt | ||
| virtio-balloon-stats.txt | ||
| vnc-ledstate-Pseudo-encoding.txt | ||
| writing-qmp-commands.txt | ||
| xbzrle.txt | ||
| xen-save-devices-state.txt | ||