On 06/24/2014 06:08 PM, Xiongzi Ge wrote:
> Hi Eric,

[we tend to avoid top-posting on technical lists]

> 
> This really works if I set up the same configuration (/dev/vda in the
> guest) but the physical block devices are not the same after migration.The
> ABI is the same.  When the guest cache stores a page like 'aaa' which is in
> the block device of Host A. If the cache in the guest is also migrated to
> Host B, but data in the block device actually are "bbb" in Host B now.

The ABI is NOT the same if the two host files do not have identical
contents; it's just that qemu cannot diagnose your bug.

> What
> will happen?  Will the cache data in the guest be migrated to the other
> host?  The vmstate function in the qemu seems doing something to save the
> vm state and the device state.
> 

Who knows what happen? You're in undefined territory, because you
violated the premise that migration does not change disk contents behind
the guest's back.

> Should the guest re-open the block device and delete the previous cache
> data or just check the consistency of the cache and the block device?

Rather than trying to figure out what happens with undefined behavior,
how about you hot-unplug the old host device, then migrate, then
hot-plug the new host device.  That way, the guest will KNOW it it is
connecting to a second disk, and not be confused by anything it cached
about the first.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to