From: Kevin Wolf <kwolf@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: QEMU Developers <qemu-devel@nongnu.org>,
Qemu-block <qemu-block@nongnu.org>, Max Reitz <mreitz@redhat.com>
Subject: Re: [PATCH for-5.1] qemu-img resize: Require --shrink for shrinking all image formats
Date: Fri, 10 Jul 2020 14:41:32 +0200 [thread overview]
Message-ID: <20200710124132.GF6641@linux.fritz.box> (raw)
In-Reply-To: <CAFEAcA-QXayeXzrAv5=5mJvRy-qC5FD3Z7AEw3ZW_UDAZ6V8-w@mail.gmail.com>
Am 10.07.2020 um 14:33 hat Peter Maydell geschrieben:
> On Fri, 10 Jul 2020 at 13:17, Kevin Wolf <kwolf@redhat.com> wrote:
> >
> > 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 <kwolf@redhat.com>
> > ---
> > qemu-img.c | 17 +++--------------
> > 1 file changed, 3 insertions(+), 14 deletions(-)
> >
> > diff --git a/qemu-img.c b/qemu-img.c
> > index e3b2ec3e78..f6a2703039 100644
> > --- a/qemu-img.c
> > +++ b/qemu-img.c
> > @@ -4011,20 +4011,9 @@ static int img_resize(int argc, char **argv)
> > }
> >
> > if (total_size < current_size && !shrink) {
> > - 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.");
> > - }
> > + error_report("Use the --shrink option to perform a shrink operation.");
>
> I think it would be nice to retain this bit of text:
>
> > - 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.");
>
> ie, make the raw-shrink case be the same as the non-raw-shrink
> case currently does.
I had this at first, but then the whole thing looked like a warning and
I wasn't sure that it would still be understood as an error. (Which is
of course a preexisting problem for non-raw.)
Maybe it becomes clearer if I just swap the order and print the error
first and only then the warning?
Kevin
next prev parent reply other threads:[~2020-07-10 12:42 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-10 12:17 [PATCH for-5.1] qemu-img resize: Require --shrink for shrinking all image formats Kevin Wolf
2020-07-10 12:26 ` Daniel P. Berrangé
2020-07-10 12:33 ` Peter Maydell
2020-07-10 12:41 ` Kevin Wolf [this message]
2020-07-14 8:33 ` Kevin Wolf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200710124132.GF6641@linux.fritz.box \
--to=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).