qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v5 4/4] block: qcow2: remove the created file on initializati


From: Vladimir Sementsov-Ogievskiy
Subject: Re: [PATCH v5 4/4] block: qcow2: remove the created file on initialization error
Date: Thu, 10 Dec 2020 14:00:06 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.5.1

09.12.2020 23:33, Maxim Levitsky wrote:
If the qcow initialization fails, we should remove the file if it was
already created, to avoid leaving stale files around.

We already do this for luks raw images.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
---
  block/qcow2.c | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/block/qcow2.c b/block/qcow2.c
index 3a90ef2786..68c9182f92 100644
--- a/block/qcow2.c
+++ b/block/qcow2.c
@@ -3847,12 +3847,14 @@ static int coroutine_fn 
qcow2_co_create_opts(BlockDriver *drv,
/* Create the qcow2 image (format layer) */
      ret = qcow2_co_create(create_options, errp);
+finish:
      if (ret < 0) {
-        goto finish;
+        bdrv_co_delete_file_noerr(bs);
+        bdrv_co_delete_file_noerr(data_bs);
      }
ret = 0;

Ooops :) After this patch the function always returns zero :)

-finish:
+
      qobject_unref(qdict);
      bdrv_unref(bs);
      bdrv_unref(data_bs);



--
Best regards,
Vladimir



reply via email to

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