qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 12/20] qed: correctly propagate errors


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH 12/20] qed: correctly propagate errors
Date: Mon, 10 Feb 2014 16:11:17 +0800
User-agent: Mutt/1.5.22 (2013-10-16)

On Sun, 02/09 10:48, Paolo Bonzini wrote:
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
>  block/qed.c | 16 ++++++----------
>  1 file changed, 6 insertions(+), 10 deletions(-)
> 
> diff --git a/block/qed.c b/block/qed.c
> index 694e6e2..59bdd58 100644
> --- a/block/qed.c
> +++ b/block/qed.c
> @@ -398,7 +398,7 @@ static int bdrv_qed_open(BlockDriverState *bs, QDict 
> *options, int flags,
>          char buf[64];
>          snprintf(buf, sizeof(buf), "%" PRIx64,
>              s->header.features & ~QED_FEATURE_MASK);
> -        qerror_report(QERR_UNKNOWN_BLOCK_FORMAT_FEATURE,
> +        error_set(errp, QERR_UNKNOWN_BLOCK_FORMAT_FEATURE,
>              bs->device_name, "QED", buf);
>          return -ENOTSUP;
>      }
> @@ -545,7 +545,8 @@ static void bdrv_qed_close(BlockDriverState *bs)
>  
>  static int qed_create(const char *filename, uint32_t cluster_size,
>                        uint64_t image_size, uint32_t table_size,
> -                      const char *backing_file, const char *backing_fmt)
> +                      const char *backing_file, const char *backing_fmt,
> +                      Error **errp)
>  {
>      QEDHeader header = {
>          .magic = QED_MAGIC,
> @@ -560,22 +561,17 @@ static int qed_create(const char *filename, uint32_t 
> cluster_size,
>      QEDHeader le_header;
>      uint8_t *l1_table = NULL;
>      size_t l1_size = header.cluster_size * header.table_size;
> -    Error *local_err = NULL;
>      int ret = 0;
>      BlockDriverState *bs = NULL;
>  
> -    ret = bdrv_create_file(filename, NULL, &local_err);
> +    ret = bdrv_create_file(filename, NULL, errp);
>      if (ret < 0) {
> -        qerror_report_err(local_err);
> -        error_free(local_err);
>          return ret;
>      }
>  
>      ret = bdrv_file_open(&bs, filename, NULL, NULL,
> -                         BDRV_O_RDWR | BDRV_O_CACHE_WB, &local_err);
> +                         BDRV_O_RDWR | BDRV_O_CACHE_WB, errp);
>      if (ret < 0) {
> -        qerror_report_err(local_err);
> -        error_free(local_err);
>          return ret;
>      }
>  
> @@ -665,7 +661,7 @@ static int bdrv_qed_create(const char *filename, 
> QEMUOptionParameter *options,
>      }
>  
>      return qed_create(filename, cluster_size, image_size, table_size,
> -                      backing_file, backing_fmt);
> +                      backing_file, backing_fmt, errp);
>  }
>  
>  typedef struct {
> -- 
> 1.8.5.3
> 

Reviewed-by: Fam Zheng <address@hidden>



reply via email to

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