- 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
 |