Kevin Wolf wrote:
> When reopening the image, don't guess the driver, but use the same driver as
> was used before. This is important if the format=... option was used for that
> image.
> 
> Signed-off-by: Kevin Wolf <kw...@redhat.com>
> ---
>  block.c |    6 +++---
>  1 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/block.c b/block.c
> index adb3e5d..ffe82f8 100644
> --- a/block.c
> +++ b/block.c
> @@ -701,12 +701,12 @@ int bdrv_commit(BlockDriverState *bs)
>          bdrv_delete(bs->backing_hd);
>          bs->backing_hd = NULL;
>          bs_rw = bdrv_new("");
> -        rw_ret = bdrv_open(bs_rw, filename, open_flags | BDRV_O_RDWR, NULL);
> +        rw_ret = bdrv_open(bs_rw, filename, open_flags | BDRV_O_RDWR, drv);
>          if (rw_ret < 0) {
>              bdrv_delete(bs_rw);
>              /* try to re-open read-only */
>              bs_ro = bdrv_new("");
> -            ret = bdrv_open(bs_ro, filename, open_flags & ~BDRV_O_RDWR, 
> NULL);
> +            ret = bdrv_open(bs_ro, filename, open_flags & ~BDRV_O_RDWR, drv);
>              if (ret < 0) {
>                  bdrv_delete(bs_ro);
>                  /* drive not functional anymore */
> @@ -758,7 +758,7 @@ ro_cleanup:
>          bdrv_delete(bs->backing_hd);
>          bs->backing_hd = NULL;
>          bs_ro = bdrv_new("");
> -        ret = bdrv_open(bs_ro, filename, open_flags & ~BDRV_O_RDWR, NULL);
> +        ret = bdrv_open(bs_ro, filename, open_flags & ~BDRV_O_RDWR, drv);
>          if (ret < 0) {
>              bdrv_delete(bs_ro);
>              /* drive not functional anymore */

Acked-by: Naphtali Sprei <nsp...@redhat.com>


Reply via email to