diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2015-11-19 15:05:06 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2015-11-19 15:05:06 +0000 |
commit | 80fda8f609457736ab43f0cb8027abb0e28a67f8 (patch) | |
tree | bc4b26d5ab64d0b88b6ae84e103e0985e1d75ef7 /include | |
parent | 8f280309030331a912fd8924c129d8bd59e1bdc7 (diff) | |
parent | 79b3c12ac5714e036a16d1a163a3517d74504f87 (diff) | |
download | qemu-80fda8f609457736ab43f0cb8027abb0e28a67f8.zip qemu-80fda8f609457736ab43f0cb8027abb0e28a67f8.tar.gz qemu-80fda8f609457736ab43f0cb8027abb0e28a67f8.tar.bz2 |
Merge remote-tracking branch 'remotes/juanquintela/tags/migration/20151119' into staging
migration/next for 20151119
# gpg: Signature made Thu 19 Nov 2015 11:17:07 GMT using RSA key ID 5872D723
# gpg: Good signature from "Juan Quintela <quintela@redhat.com>"
# gpg: aka "Juan Quintela <quintela@trasno.org>"
* remotes/juanquintela/tags/migration/20151119:
migration: normalize locking in migration/savevm.c
migration: implement bdrv_all_find_vmstate_bs helper
migration: reorder processing in hmp_savevm
snapshot: create bdrv_all_create_snapshot helper
migration: drop find_vmstate_bs check in hmp_delvm
snapshot: create bdrv_all_find_snapshot helper
migration: factor our snapshottability check in load_vmstate
snapshot: create bdrv_all_goto_snapshot helper
snapshot: create bdrv_all_delete_snapshot helper
snapshot: return error code from bdrv_snapshot_delete_by_id_or_name
snapshot: create helper to test that block drivers supports snapshots
Unneeded NULL check
migration: Dead assignment of current_time
Set last_sent_block
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/block/snapshot.h | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/include/block/snapshot.h b/include/block/snapshot.h index 770d9bb..c6910da6 100644 --- a/include/block/snapshot.h +++ b/include/block/snapshot.h @@ -63,9 +63,9 @@ int bdrv_snapshot_delete(BlockDriverState *bs, const char *snapshot_id, const char *name, Error **errp); -void bdrv_snapshot_delete_by_id_or_name(BlockDriverState *bs, - const char *id_or_name, - Error **errp); +int bdrv_snapshot_delete_by_id_or_name(BlockDriverState *bs, + const char *id_or_name, + Error **errp); int bdrv_snapshot_list(BlockDriverState *bs, QEMUSnapshotInfo **psn_info); int bdrv_snapshot_load_tmp(BlockDriverState *bs, @@ -75,4 +75,22 @@ int bdrv_snapshot_load_tmp(BlockDriverState *bs, int bdrv_snapshot_load_tmp_by_id_or_name(BlockDriverState *bs, const char *id_or_name, Error **errp); + + +/* Group operations. All block drivers are involved. + * These functions will properly handle dataplane (take aio_context_acquire + * when appropriate for appropriate block drivers */ + +bool bdrv_all_can_snapshot(BlockDriverState **first_bad_bs); +int bdrv_all_delete_snapshot(const char *name, BlockDriverState **first_bsd_bs, + Error **err); +int bdrv_all_goto_snapshot(const char *name, BlockDriverState **first_bsd_bs); +int bdrv_all_find_snapshot(const char *name, BlockDriverState **first_bad_bs); +int bdrv_all_create_snapshot(QEMUSnapshotInfo *sn, + BlockDriverState *vm_state_bs, + uint64_t vm_state_size, + BlockDriverState **first_bad_bs); + +BlockDriverState *bdrv_all_find_vmstate_bs(void); + #endif |