summaryrefslogtreecommitdiff
path: root/block/qed.c
diff options
context:
space:
mode:
authorMax Reitz <mreitz@redhat.com>2013-09-05 14:45:29 +0200
committerKevin Wolf <kwolf@redhat.com>2013-09-12 10:12:48 +0200
commit34b5d2c68eb4082c288e70fb99c61af8f7b96fde (patch)
tree7c4c1e4e248a8e044dd891b0e54de1fcc03d7434 /block/qed.c
parentd5124c00d80b4d948509f2c7f6b54228d9981f75 (diff)
downloadqemu-34b5d2c68eb4082c288e70fb99c61af8f7b96fde.tar.gz
qemu-34b5d2c68eb4082c288e70fb99c61af8f7b96fde.tar.bz2
qemu-34b5d2c68eb4082c288e70fb99c61af8f7b96fde.zip
block: Error parameter for open functions
Add an Error ** parameter to bdrv_open, bdrv_file_open and associated functions to allow more specific error messages. Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block/qed.c')
-rw-r--r--block/qed.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/block/qed.c b/block/qed.c
index 250fa89b0f..f17094cb92 100644
--- a/block/qed.c
+++ b/block/qed.c
@@ -551,6 +551,7 @@ 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;
@@ -559,8 +560,11 @@ static int qed_create(const char *filename, uint32_t cluster_size,
return ret;
}
- ret = bdrv_file_open(&bs, filename, NULL, BDRV_O_RDWR | BDRV_O_CACHE_WB);
+ ret = bdrv_file_open(&bs, filename, NULL, BDRV_O_RDWR | BDRV_O_CACHE_WB,
+ &local_err);
if (ret < 0) {
+ qerror_report_err(local_err);
+ error_free(local_err);
return ret;
}