From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=53610 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pn7Ja-0003mR-QT for qemu-devel@nongnu.org; Wed, 09 Feb 2011 05:30:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pn7JZ-0006GX-I9 for qemu-devel@nongnu.org; Wed, 09 Feb 2011 05:30:26 -0500 Received: from mx1.redhat.com ([209.132.183.28]:19619) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Pn7JZ-0006GL-84 for qemu-devel@nongnu.org; Wed, 09 Feb 2011 05:30:25 -0500 From: Kevin Wolf Date: Wed, 9 Feb 2011 11:32:01 +0100 Message-Id: <1297247521-11464-5-git-send-email-kwolf@redhat.com> In-Reply-To: <1297247521-11464-1-git-send-email-kwolf@redhat.com> References: <1297247521-11464-1-git-send-email-kwolf@redhat.com> Subject: [Qemu-devel] [PATCH 4/4] qemu-img: Improve error messages for failed bdrv_open List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, stefanha@gmail.com, lcapitulino@redhat.com Output the error message string of the bdrv_open return code. Also set a non-empty device name for the images because the unknown feature error message includes it. Signed-off-by: Kevin Wolf --- qemu-img.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/qemu-img.c b/qemu-img.c index 4a37358..7e3cc4c 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -213,8 +213,9 @@ static BlockDriverState *bdrv_new_open(const char *filename, BlockDriverState *bs; BlockDriver *drv; char password[256]; + int ret; - bs = bdrv_new(""); + bs = bdrv_new("image"); if (fmt) { drv = bdrv_find_format(fmt); @@ -225,10 +226,13 @@ static BlockDriverState *bdrv_new_open(const char *filename, } else { drv = NULL; } - if (bdrv_open(bs, filename, flags, drv) < 0) { - error_report("Could not open '%s'", filename); + + ret = bdrv_open(bs, filename, flags, drv); + if (ret < 0) { + error_report("Could not open '%s': %s", filename, strerror(-ret)); goto fail; } + if (bdrv_is_encrypted(bs)) { printf("Disk image '%s' is encrypted.\n", filename); if (read_password(password, sizeof(password)) < 0) { -- 1.7.2.3