[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH 2/2] qemu-img: better error message when opening a
From: |
Maxim Levitsky |
Subject: |
[Qemu-trivial] [PATCH 2/2] qemu-img: better error message when opening a backing file fails |
Date: |
Sun, 21 Jul 2019 21:15:08 +0300 |
Currently we print message like that:
"
new_file.qcow2 : error message
"
However the error could have come from opening the backing file (e.g when it
missing encryption keys),
thus try to clarify this by using this format:
"
qemu-img: error creating new_file.qcow2: base_file.qcow2: error message
Could not open backing image to determine size.
"
Test used:
qemu-img create -f qcow2 \
--object secret,id=sec0,data=hunter9 \
--object secret,id=sec1,data=my_new_secret_password \
-b 'json:{ "encrypt.key-secret": "sec1", "driver": "qcow2", "file": {
"driver": "file", "filename": "base.qcow2" }}' \
-o encrypt.format=luks,encrypt.key-secret=sec1 \
sn.qcow2
Error message before:
qemu-img: sn.qcow2: Invalid password, cannot unlock any keyslot
Could not open backing image to determine size.
Error message after:
qemu-img: error creating sn.qcow2: \
json:{ "encrypt.key-secret": "sec1", "driver": "qcow2", "file": {
"driver": "file", "filename": "base.qcow2" }}: \
Invalid password, cannot unlock any keyslot
Could not open backing image to determine size.
Signed-off-by: Maxim Levitsky <address@hidden>
---
block.c | 1 +
qemu-img.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/block.c b/block.c
index 29e931e217..5eb47b2199 100644
--- a/block.c
+++ b/block.c
@@ -5790,6 +5790,7 @@ void bdrv_img_create(const char *filename, const char
*fmt,
"This may become an error in future versions.\n");
local_err = NULL;
} else if (!bs) {
+ error_prepend(&local_err, "%s: ", backing_file);
/* Couldn't open bs, do not have size */
error_append_hint(&local_err,
"Could not open backing image to determine
size.\n");
diff --git a/qemu-img.c b/qemu-img.c
index 79983772de..134bf2fbe0 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -545,7 +545,7 @@ static int img_create(int argc, char **argv)
bdrv_img_create(filename, fmt, base_filename, base_fmt,
options, img_size, flags, quiet, &local_err);
if (local_err) {
- error_reportf_err(local_err, "%s: ", filename);
+ error_reportf_err(local_err, "error creating %s: ", filename);
goto fail;
}
--
2.17.2