diff mbox series

[2/2] savevm: Delete snapshots just created in case of error

Message ID 1607410416-13563-3-git-send-email-tu.guoyi@h3c.com
State New
Headers show
Series savevm: Delete stale snapshots in save_snapshot() | expand

Commit Message

Tuguoyi Dec. 8, 2020, 6:53 a.m. UTC
bdrv_all_create_snapshot() can fails with some snapshots created,
so it's better to delete those snapshots before returns to the caller

Signed-off-by: Tuguoyi <tu.guoyi@h3c.com>
---
 migration/savevm.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Dr. David Alan Gilbert Dec. 17, 2020, 3:38 p.m. UTC | #1
* Tuguoyi (tu.guoyi@h3c.com) wrote:
> bdrv_all_create_snapshot() can fails with some snapshots created,
> so it's better to delete those snapshots before returns to the caller
> 
> Signed-off-by: Tuguoyi <tu.guoyi@h3c.com>

This makes sense to me,


Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> ---
>  migration/savevm.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/migration/savevm.c b/migration/savevm.c
> index 601b514..4a18c9d 100644
> --- a/migration/savevm.c
> +++ b/migration/savevm.c
> @@ -2833,6 +2833,7 @@ int save_snapshot(const char *name, Error **errp)
>      if (ret < 0) {
>          error_setg(errp, "Error while creating snapshot on '%s'",
>                     bdrv_get_device_or_node_name(bs));
> +        bdrv_all_delete_snapshot(sn->name, &bs, NULL);
>          goto the_end;
>      }
>  
> -- 
> 2.7.4
>
diff mbox series

Patch

diff --git a/migration/savevm.c b/migration/savevm.c
index 601b514..4a18c9d 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -2833,6 +2833,7 @@  int save_snapshot(const char *name, Error **errp)
     if (ret < 0) {
         error_setg(errp, "Error while creating snapshot on '%s'",
                    bdrv_get_device_or_node_name(bs));
+        bdrv_all_delete_snapshot(sn->name, &bs, NULL);
         goto the_end;
     }