mirror of
https://github.com/qemu/qemu.git
synced 2024-12-03 00:33:39 +08:00
a7ae8355b4
- add an "is_ram" flag to SaveStateEntry; - register_savevm_live sets is_ram for live_savevm devices; - introduce a "xen-save-devices-state" QAPI command that can be used to save the state of all devices, but not the RAM or the block devices of the VM. Changes in v8: - rename save-devices-state to xen-save-devices-state. Changes in v7: - rename save_devices to save-devices-state. Changes in v6: - remove the is_ram parameter from register_savevm_live and sets is_ram if the device is a live_savevm device; - introduce save_devices as a QAPI command, write a better description for it; - fix CODING_STYLE; - introduce a new doc to explain the save format used by save_devices. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Reviewed-by: Anthony Liguori <aliguori@us.ibm.com> Acked-by: Luiz Capitulino <lcapitulino@redhat.com>
35 lines
1004 B
Plaintext
35 lines
1004 B
Plaintext
= Save Devices =
|
|
|
|
QEMU has code to load/save the state of the guest that it is running.
|
|
These are two complementary operations. Saving the state just does
|
|
that, saves the state for each device that the guest is running.
|
|
|
|
These operations are normally used with migration (see migration.txt),
|
|
however it is also possible to save the state of all devices to file,
|
|
without saving the RAM or the block devices of the VM.
|
|
|
|
This operation is called "xen-save-devices-state" (see
|
|
QMP/qmp-commands.txt)
|
|
|
|
|
|
The binary format used in the file is the following:
|
|
|
|
|
|
-------------------------------------------
|
|
|
|
32 bit big endian: QEMU_VM_FILE_MAGIC
|
|
32 bit big endian: QEMU_VM_FILE_VERSION
|
|
|
|
for_each_device
|
|
{
|
|
8 bit: QEMU_VM_SECTION_FULL
|
|
32 bit big endian: section_id
|
|
8 bit: idstr (ID string) length
|
|
string: idstr (ID string)
|
|
32 bit big endian: instance_id
|
|
32 bit big endian: version_id
|
|
buffer: device specific data
|
|
}
|
|
|
|
8 bit: QEMU_VM_EOF
|