On 03/10/2015 02:25, Alexey Kardashevskiy wrote:
>> I think this is the aim of VMSTATE_UINT64_EQUAL() ?
> 
> We use it only for things which cannot be set via the command line
> and ideally there should be no VMSTATE_*_EQUAL. If something can be
> set via the command line, then the management software (read -
> libvirt) runs QEMU with explicit parameters to guarantee that these
> are equal.

VMSTATE_*_EQUAL is used when a value is later used as e.g. the size of
an array.  It basically provides bounds checking for the subsequent
array, avoiding that an invalid migration file or an error issuing the
QEMU command on the destination transforms into a buffer overflow.

Michael Roth did most of this work, IIRC.  Documenting it in
docs/migration.txt would be nice.

Paolo

Reply via email to