qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v5 5/9] savevm: add public save_vmstate function


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH v5 5/9] savevm: add public save_vmstate function
Date: Mon, 26 Sep 2016 10:15:15 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0


On 26/09/2016 10:08, Pavel Dovgalyuk wrote:
> -void hmp_savevm(Monitor *mon, const QDict *qdict)
> +int save_vmstate(Monitor *mon, const char *name)

Please change this to return an Error **.

Paolo

>  {
>      BlockDriverState *bs, *bs1;
>      QEMUSnapshotInfo sn1, *sn = &sn1, old_sn1, *old_sn = &old_sn1;
> -    int ret;
> +    int ret = -1;
>      QEMUFile *f;
>      int saved_vm_running;
>      uint64_t vm_state_size;
>      qemu_timeval tv;
>      struct tm tm;
> -    const char *name = qdict_get_try_str(qdict, "name");
>      Error *local_err = NULL;
>      AioContext *aio_context;
>  
>      if (!bdrv_all_can_snapshot(&bs)) {
>          monitor_printf(mon, "Device '%s' is writable but does not "
>                         "support snapshots.\n", bdrv_get_device_name(bs));
> -        return;
> +        return ret;
>      }
>  
>      /* Delete old snapshots of the same name */
> -    if (name && bdrv_all_delete_snapshot(name, &bs1, &local_err) < 0) {
> -        error_reportf_err(local_err,
> -                          "Error while deleting snapshot on device '%s': ",
> -                          bdrv_get_device_name(bs1));
> -        return;
> +    if (name) {
> +        ret = bdrv_all_delete_snapshot(name, &bs1, &local_err);
> +        if (ret < 0) {
> +            error_reportf_err(local_err,
> +                              "Error while deleting snapshot on device '%s': 
> ",
> +                              bdrv_get_device_name(bs1));
> +            return ret;
> +        }
>      }
>  
>      bs = bdrv_all_find_vmstate_bs();
>      if (bs == NULL) {
>          monitor_printf(mon, "No block device can accept snapshots\n");
> -        return;
> +        return ret;
>      }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]