summaryrefslogtreecommitdiffstats
path: root/block/qcow.c
diff options
context:
space:
mode:
authorPeter Maydell2017-08-31 15:33:54 +0200
committerPeter Maydell2017-08-31 15:33:54 +0200
commit1d2a8e0690a8b26833346c6e84e91773da66fbf4 (patch)
tree60db1d7e8ac53266177dc085c66be75615c0edf1 /block/qcow.c
parentMerge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2017-08-30' into st... (diff)
parentqcow2: allocate cluster_cache/cluster_data on demand (diff)
downloadqemu-1d2a8e0690a8b26833346c6e84e91773da66fbf4.tar.gz
qemu-1d2a8e0690a8b26833346c6e84e91773da66fbf4.tar.xz
qemu-1d2a8e0690a8b26833346c6e84e91773da66fbf4.zip
Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging
# gpg: Signature made Thu 31 Aug 2017 09:21:49 BST # gpg: using RSA key 0x9CA4ABB381AB73C8 # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" # gpg: aka "Stefan Hajnoczi <stefanha@gmail.com>" # Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35 775A 9CA4 ABB3 81AB 73C8 * remotes/stefanha/tags/block-pull-request: qcow2: allocate cluster_cache/cluster_data on demand qemu-doc: Add UUID support in initiator name tests: migration/guestperf Python 2.6 argparse compatibility docker.py: Python 2.6 argparse compatibility scripts: add argparse module for Python 2.6 compatibility misc: Remove unused Error variables oslib-posix: Print errors before aborting on qemu_alloc_stack() throttle: Test the valid range of config values throttle: Make burst_length 64bit and add range checks throttle: Make LeakyBucket.avg and LeakyBucket.max integer types throttle: Remove throttle_fix_bucket() / throttle_unfix_bucket() throttle: Make throttle_is_valid() a bit less verbose throttle: Update the throttle_fix_bucket() documentation throttle: Fix wrong variable name in the header documentation nvme: Fix get/set number of queues feature, again Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'block/qcow.c')
-rw-r--r--block/qcow.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/block/qcow.c b/block/qcow.c
index c08cdc4a7b..63904a26ee 100644
--- a/block/qcow.c
+++ b/block/qcow.c
@@ -454,13 +454,11 @@ static uint64_t get_cluster_offset(BlockDriverState *bs,
start_sect = (offset & ~(s->cluster_size - 1)) >> 9;
for(i = 0; i < s->cluster_sectors; i++) {
if (i < n_start || i >= n_end) {
- Error *err = NULL;
memset(s->cluster_data, 0x00, 512);
if (qcrypto_block_encrypt(s->crypto, start_sect + i,
s->cluster_data,
BDRV_SECTOR_SIZE,
- &err) < 0) {
- error_free(err);
+ NULL) < 0) {
errno = EIO;
return -1;
}
@@ -572,7 +570,6 @@ static coroutine_fn int qcow_co_readv(BlockDriverState *bs, int64_t sector_num,
QEMUIOVector hd_qiov;
uint8_t *buf;
void *orig_buf;
- Error *err = NULL;
if (qiov->niov > 1) {
buf = orig_buf = qemu_try_blockalign(bs, qiov->size);
@@ -637,7 +634,7 @@ static coroutine_fn int qcow_co_readv(BlockDriverState *bs, int64_t sector_num,
if (bs->encrypted) {
assert(s->crypto);
if (qcrypto_block_decrypt(s->crypto, sector_num, buf,
- n * BDRV_SECTOR_SIZE, &err) < 0) {
+ n * BDRV_SECTOR_SIZE, NULL) < 0) {
goto fail;
}
}
@@ -660,7 +657,6 @@ done:
return ret;
fail:
- error_free(err);
ret = -EIO;
goto done;
}
@@ -709,11 +705,9 @@ static coroutine_fn int qcow_co_writev(BlockDriverState *bs, int64_t sector_num,
break;
}
if (bs->encrypted) {
- Error *err = NULL;
assert(s->crypto);
if (qcrypto_block_encrypt(s->crypto, sector_num, buf,
- n * BDRV_SECTOR_SIZE, &err) < 0) {
- error_free(err);
+ n * BDRV_SECTOR_SIZE, NULL) < 0) {
ret = -EIO;
break;
}