From: Kevin Wolf Date: Fri, 10 Jul 2020 12:17:17 +0000 (+0200) Subject: qemu-img resize: Require --shrink for shrinking all image formats X-Git-Tag: v5.1.0-rc1~16^2~9 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1c404d756fd59ecee09dec924b88c492d24b3fc8;p=thirdparty%2Fqemu.git qemu-img resize: Require --shrink for shrinking all image formats QEMU 2.11 introduced the --shrink option for qemu-img resize to avoid accidentally shrinking images (commit 4ffca8904a3). However, for compatibility reasons, it was not enforced for raw images yet, but only a deprecation warning was printed. This warning has existed for long enough that we can now finally require --shrink for raw images, too, and error out if it's not given. Documentation already describes the state as it is after this patch. Signed-off-by: Kevin Wolf Message-Id: <20200710121717.28339-1-kwolf@redhat.com> Reviewed-by: Daniel P. Berrangé Signed-off-by: Kevin Wolf --- diff --git a/qemu-img.c b/qemu-img.c index efb6ca139e0..5308773811f 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -4004,20 +4004,12 @@ static int img_resize(int argc, char **argv) } if (total_size < current_size && !shrink) { + error_report("Use the --shrink option to perform a shrink operation."); warn_report("Shrinking an image will delete all data beyond the " "shrunken image's end. Before performing such an " "operation, make sure there is no important data there."); - - if (g_strcmp0(bdrv_get_format_name(blk_bs(blk)), "raw") != 0) { - error_report( - "Use the --shrink option to perform a shrink operation."); - ret = -1; - goto out; - } else { - warn_report("Using the --shrink option will suppress this message. " - "Note that future versions of qemu-img may refuse to " - "shrink images without this option."); - } + ret = -1; + goto out; } /*