qcow2: Use error_report() in qcow2_amend_options()

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
Max Reitz 2015-07-27 17:51:33 +02:00 committed by Kevin Wolf
parent 8b13976d3f
commit 29d72431ef
2 changed files with 13 additions and 15 deletions

View File

@ -2964,11 +2964,11 @@ static int qcow2_amend_options(BlockDriverState *bs, QemuOpts *opts,
} else if (!strcmp(compat, "1.1")) { } else if (!strcmp(compat, "1.1")) {
new_version = 3; new_version = 3;
} else { } else {
fprintf(stderr, "Unknown compatibility level %s.\n", compat); error_report("Unknown compatibility level %s", compat);
return -EINVAL; return -EINVAL;
} }
} else if (!strcmp(desc->name, BLOCK_OPT_PREALLOC)) { } else if (!strcmp(desc->name, BLOCK_OPT_PREALLOC)) {
fprintf(stderr, "Cannot change preallocation mode.\n"); error_report("Cannot change preallocation mode");
return -ENOTSUP; return -ENOTSUP;
} else if (!strcmp(desc->name, BLOCK_OPT_SIZE)) { } else if (!strcmp(desc->name, BLOCK_OPT_SIZE)) {
new_size = qemu_opt_get_size(opts, BLOCK_OPT_SIZE, 0); new_size = qemu_opt_get_size(opts, BLOCK_OPT_SIZE, 0);
@ -2981,16 +2981,14 @@ static int qcow2_amend_options(BlockDriverState *bs, QemuOpts *opts,
!!s->cipher); !!s->cipher);
if (encrypt != !!s->cipher) { if (encrypt != !!s->cipher) {
fprintf(stderr, "Changing the encryption flag is not " error_report("Changing the encryption flag is not supported");
"supported.\n");
return -ENOTSUP; return -ENOTSUP;
} }
} else if (!strcmp(desc->name, BLOCK_OPT_CLUSTER_SIZE)) { } else if (!strcmp(desc->name, BLOCK_OPT_CLUSTER_SIZE)) {
cluster_size = qemu_opt_get_size(opts, BLOCK_OPT_CLUSTER_SIZE, cluster_size = qemu_opt_get_size(opts, BLOCK_OPT_CLUSTER_SIZE,
cluster_size); cluster_size);
if (cluster_size != s->cluster_size) { if (cluster_size != s->cluster_size) {
fprintf(stderr, "Changing the cluster size is not " error_report("Changing the cluster size is not supported");
"supported.\n");
return -ENOTSUP; return -ENOTSUP;
} }
} else if (!strcmp(desc->name, BLOCK_OPT_LAZY_REFCOUNTS)) { } else if (!strcmp(desc->name, BLOCK_OPT_LAZY_REFCOUNTS)) {
@ -3037,8 +3035,8 @@ static int qcow2_amend_options(BlockDriverState *bs, QemuOpts *opts,
if (s->use_lazy_refcounts != lazy_refcounts) { if (s->use_lazy_refcounts != lazy_refcounts) {
if (lazy_refcounts) { if (lazy_refcounts) {
if (s->qcow_version < 3) { if (s->qcow_version < 3) {
fprintf(stderr, "Lazy refcounts only supported with compatibility " error_report("Lazy refcounts only supported with compatibility "
"level 1.1 and above (use compat=1.1 or greater)\n"); "level 1.1 and above (use compat=1.1 or greater)");
return -EINVAL; return -EINVAL;
} }
s->compatible_features |= QCOW2_COMPAT_LAZY_REFCOUNTS; s->compatible_features |= QCOW2_COMPAT_LAZY_REFCOUNTS;

View File

@ -291,18 +291,18 @@ No errors were found on the image.
=== Testing invalid configurations === === Testing invalid configurations ===
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater) qemu-img: Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater)
qemu-img: Error while amending options: Invalid argument qemu-img: Error while amending options: Invalid argument
Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater) qemu-img: Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater)
qemu-img: Error while amending options: Invalid argument qemu-img: Error while amending options: Invalid argument
Unknown compatibility level 0.42. qemu-img: Unknown compatibility level 0.42
qemu-img: Error while amending options: Invalid argument qemu-img: Error while amending options: Invalid argument
qemu-img: Invalid parameter 'foo' qemu-img: Invalid parameter 'foo'
Changing the cluster size is not supported. qemu-img: Changing the cluster size is not supported
qemu-img: Error while amending options: Operation not supported qemu-img: Error while amending options: Operation not supported
Changing the encryption flag is not supported. qemu-img: Changing the encryption flag is not supported
qemu-img: Error while amending options: Operation not supported qemu-img: Error while amending options: Operation not supported
Cannot change preallocation mode. qemu-img: Cannot change preallocation mode
qemu-img: Error while amending options: Operation not supported qemu-img: Error while amending options: Operation not supported
=== Testing correct handling of unset value === === Testing correct handling of unset value ===
@ -310,7 +310,7 @@ qemu-img: Error while amending options: Operation not supported
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
Should work: Should work:
Should not work: Should not work:
Changing the cluster size is not supported. qemu-img: Changing the cluster size is not supported
qemu-img: Error while amending options: Operation not supported qemu-img: Error while amending options: Operation not supported
=== Testing zero expansion on inactive clusters === === Testing zero expansion on inactive clusters ===