mirror of
				https://git.proxmox.com/git/qemu
				synced 2025-10-31 21:46:35 +00:00 
			
		
		
		
	 de90930a0c
			
		
	
	
		de90930a0c
		
	
	
	
	
		
			
			Make "drive_backup" available on the HMP monitor:
  drive_backup [-n] [-f] device target [format]
The -n flag requests QEMU to reuse the image found in new-image-file,
instead of recreating it from scratch.
The -f flag requests QEMU to copy the whole disk, so that the result
does not need a backing file.  Note that this flag *must* currently be
passed since the other sync modes ('none' and 'top') have not been
implemented yet.  Requiring it ensures that "drive_backup" behaves like
"drive_mirror".
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
		
	
			
		
			
				
	
	
		
			92 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Human Monitor Interface
 | |
|  *
 | |
|  * Copyright IBM, Corp. 2011
 | |
|  *
 | |
|  * Authors:
 | |
|  *  Anthony Liguori   <aliguori@us.ibm.com>
 | |
|  *
 | |
|  * This work is licensed under the terms of the GNU GPL, version 2.  See
 | |
|  * the COPYING file in the top-level directory.
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #ifndef HMP_H
 | |
| #define HMP_H
 | |
| 
 | |
| #include "qemu-common.h"
 | |
| #include "qapi-types.h"
 | |
| #include "qapi/qmp/qdict.h"
 | |
| 
 | |
| void hmp_info_name(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_version(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_kvm(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_status(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_uuid(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_chardev(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_mice(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_migrate(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_migrate_capabilities(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_migrate_cache_size(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_cpus(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_block(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_blockstats(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_vnc(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_spice(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_balloon(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_pci(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_block_jobs(Monitor *mon, const QDict *qdict);
 | |
| void hmp_info_tpm(Monitor *mon, const QDict *qdict);
 | |
| void hmp_quit(Monitor *mon, const QDict *qdict);
 | |
| void hmp_stop(Monitor *mon, const QDict *qdict);
 | |
| void hmp_system_reset(Monitor *mon, const QDict *qdict);
 | |
| void hmp_system_powerdown(Monitor *mon, const QDict *qdict);
 | |
| void hmp_cpu(Monitor *mon, const QDict *qdict);
 | |
| void hmp_memsave(Monitor *mon, const QDict *qdict);
 | |
| void hmp_pmemsave(Monitor *mon, const QDict *qdict);
 | |
| void hmp_ringbuf_write(Monitor *mon, const QDict *qdict);
 | |
| void hmp_ringbuf_read(Monitor *mon, const QDict *qdict);
 | |
| void hmp_cont(Monitor *mon, const QDict *qdict);
 | |
| void hmp_system_wakeup(Monitor *mon, const QDict *qdict);
 | |
| void hmp_inject_nmi(Monitor *mon, const QDict *qdict);
 | |
| void hmp_set_link(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_passwd(Monitor *mon, const QDict *qdict);
 | |
| void hmp_balloon(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_resize(Monitor *mon, const QDict *qdict);
 | |
| void hmp_snapshot_blkdev(Monitor *mon, const QDict *qdict);
 | |
| void hmp_drive_mirror(Monitor *mon, const QDict *qdict);
 | |
| void hmp_drive_backup(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate_cancel(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate_set_speed(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate_set_capability(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate_set_cache_size(Monitor *mon, const QDict *qdict);
 | |
| void hmp_set_password(Monitor *mon, const QDict *qdict);
 | |
| void hmp_expire_password(Monitor *mon, const QDict *qdict);
 | |
| void hmp_eject(Monitor *mon, const QDict *qdict);
 | |
| void hmp_change(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_set_io_throttle(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_stream(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_job_set_speed(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_job_cancel(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_job_pause(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_job_resume(Monitor *mon, const QDict *qdict);
 | |
| void hmp_block_job_complete(Monitor *mon, const QDict *qdict);
 | |
| void hmp_migrate(Monitor *mon, const QDict *qdict);
 | |
| void hmp_device_del(Monitor *mon, const QDict *qdict);
 | |
| void hmp_dump_guest_memory(Monitor *mon, const QDict *qdict);
 | |
| void hmp_netdev_add(Monitor *mon, const QDict *qdict);
 | |
| void hmp_netdev_del(Monitor *mon, const QDict *qdict);
 | |
| void hmp_getfd(Monitor *mon, const QDict *qdict);
 | |
| void hmp_closefd(Monitor *mon, const QDict *qdict);
 | |
| void hmp_send_key(Monitor *mon, const QDict *qdict);
 | |
| void hmp_screen_dump(Monitor *mon, const QDict *qdict);
 | |
| void hmp_nbd_server_start(Monitor *mon, const QDict *qdict);
 | |
| void hmp_nbd_server_add(Monitor *mon, const QDict *qdict);
 | |
| void hmp_nbd_server_stop(Monitor *mon, const QDict *qdict);
 | |
| void hmp_chardev_add(Monitor *mon, const QDict *qdict);
 | |
| void hmp_chardev_remove(Monitor *mon, const QDict *qdict);
 | |
| void hmp_qemu_io(Monitor *mon, const QDict *qdict);
 | |
| 
 | |
| #endif
 |