diff options
author | Max Reitz <mreitz@redhat.com> | 2019-09-18 11:51:44 +0200 |
---|---|---|
committer | Max Reitz <mreitz@redhat.com> | 2019-10-28 12:10:03 +0100 |
commit | 09c5c6de41f27bb128a020d64983adf07b6a256c (patch) | |
tree | 8db170b0007d518ba1e8addd96074a23de4848f7 /qemu-img.c | |
parent | e8d04f92378c2de7b464e04469a657fd37eb29ea (diff) | |
download | qemu-09c5c6de41f27bb128a020d64983adf07b6a256c.zip qemu-09c5c6de41f27bb128a020d64983adf07b6a256c.tar.gz qemu-09c5c6de41f27bb128a020d64983adf07b6a256c.tar.bz2 |
Revert "qemu-img: Check post-truncation size"
This reverts commit 5279b30392da7a3248b320c75f20c61e3a95863c.
We no longer need this check because exact=true forces the block driver
to give the image the exact size requested by the user.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Message-id: 20190918095144.955-9-mreitz@redhat.com
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'qemu-img.c')
-rw-r--r-- | qemu-img.c | 39 |
1 files changed, 4 insertions, 35 deletions
@@ -3656,7 +3656,7 @@ static int img_resize(int argc, char **argv) Error *err = NULL; int c, ret, relative; const char *filename, *fmt, *size; - int64_t n, total_size, current_size, new_size; + int64_t n, total_size, current_size; bool quiet = false; BlockBackend *blk = NULL; PreallocMode prealloc = PREALLOC_MODE_OFF; @@ -3837,42 +3837,11 @@ static int img_resize(int argc, char **argv) * success when the image has not actually been resized. */ ret = blk_truncate(blk, total_size, true, prealloc, &err); - if (ret < 0) { + if (!ret) { + qprintf(quiet, "Image resized.\n"); + } else { error_report_err(err); - goto out; - } - - new_size = blk_getlength(blk); - if (new_size < 0) { - error_report("Failed to verify truncated image length: %s", - strerror(-new_size)); - ret = -1; - goto out; } - - /* Some block drivers implement a truncation method, but only so - * the user can cause qemu to refresh the image's size from disk. - * The idea is that the user resizes the image outside of qemu and - * then invokes block_resize to inform qemu about it. - * (This includes iscsi and file-posix for device files.) - * Of course, that is not the behavior someone invoking - * qemu-img resize would find useful, so we catch that behavior - * here and tell the user. */ - if (new_size != total_size && new_size == current_size) { - error_report("Image was not resized; resizing may not be supported " - "for this image"); - ret = -1; - goto out; - } - - if (new_size != total_size) { - warn_report("Image should have been resized to %" PRIi64 - " bytes, but was resized to %" PRIi64 " bytes", - total_size, new_size); - } - - qprintf(quiet, "Image resized.\n"); - out: blk_unref(blk); if (ret) { |