diff options
author | Daniel P. Berrangé <berrange@redhat.com> | 2021-02-04 12:48:28 +0000 |
---|---|---|
committer | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2021-02-08 11:19:51 +0000 |
commit | 3d3e9b1f669b60d9d3cb857edbfc3d54cbb9c0ef (patch) | |
tree | 0c55e6564c1cea3901e2af1fd86eb9d7582b6182 /migration | |
parent | c22d644ca78dcccdfc4a2e2bc3594bd27c1f4fe5 (diff) | |
download | qemu-3d3e9b1f669b60d9d3cb857edbfc3d54cbb9c0ef.zip qemu-3d3e9b1f669b60d9d3cb857edbfc3d54cbb9c0ef.tar.gz qemu-3d3e9b1f669b60d9d3cb857edbfc3d54cbb9c0ef.tar.bz2 |
block: rename and alter bdrv_all_find_snapshot semantics
Currently bdrv_all_find_snapshot() will return 0 if it finds
a snapshot, -1 if an error occurs, or if it fails to find a
snapshot. New callers to be added want to distinguish between
the error scenario and failing to find a snapshot.
Rename it to bdrv_all_has_snapshot and make it return -1 on
error, 0 if no snapshot is found and 1 if snapshot is found.
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210204124834.774401-7-berrange@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'migration')
-rw-r--r-- | migration/savevm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/migration/savevm.c b/migration/savevm.c index cdd201e..a2a842d 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -2977,10 +2977,15 @@ bool load_snapshot(const char *name, Error **errp) if (!bdrv_all_can_snapshot(false, NULL, errp)) { return false; } - ret = bdrv_all_find_snapshot(name, false, NULL, errp); + ret = bdrv_all_has_snapshot(name, false, NULL, errp); if (ret < 0) { return false; } + if (ret == 0) { + error_setg(errp, "Snapshot '%s' does not exist in one or more devices", + name); + return false; + } bs_vm_state = bdrv_all_find_vmstate_bs(NULL, false, NULL, errp); if (!bs_vm_state) { |