On (Wed) 20 Jul 2016 [12:08:32], Eduardo Habkost wrote: > From: Igor Mammedov <imamm...@redhat.com> > > instance_id is generated by last_used_id + 1 for a given device type > so for QEMU with 3 CPUs instance_id for APICs is a seti of [0, 1, 2] > When CPU in the middle is hot-removed and migration started > APICs with instance_ids 0 and 2 are transferred in migration stream. > However target starts with 2 CPUs and APICs' instance_ids are > generated from scratch [0, 1] hence migration fails with error > Unknown savevm section or instance 'apic' 2 > > Fix issue by manually registering APIC's vmsd with apic_id as > instance_id, in this case instance_id on target will always > match instance_id on source as apic_id is the same for a given > cpu instance. > > Reported-by: Bharata B Rao <bhar...@linux.vnet.ibm.com> > Signed-off-by: Igor Mammedov <imamm...@redhat.com> > Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > Reviewed-by: Michael S. Tsirkin <m...@redhat.com> > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com>
After these patches, the static checker complains about missing sections: Section "apic-common" does not exist in dest Section "apic" does not exist in dest Section "kvm-apic" does not exist in dest This will break migration from older versions. Amit