[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v2 0/7] qemu-img: Improve option help for amend
From: |
Max Reitz |
Subject: |
Re: [Qemu-block] [PATCH v2 0/7] qemu-img: Improve option help for amend |
Date: |
Fri, 1 Jun 2018 13:06:25 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
On 2018-05-09 23:00, Max Reitz wrote:
> [Unchanged text from v1 ahead]
>
> Currently, "qemu-img amend -f $format -o help" prints many things which
> it claims to be supported, but most of the time it's wrong. Usually
> that starts with the format already: No format but qcow2 supports option
> amendment, so we should never claim that a format supports any options
> when it actually does not support amendment in the first place.
>
> It goes on with the options themselves. The qcow2 driver does not
> support amendment of all creation options, so we should not claim it
> does. Actually knowing which formats are supported exactly would be a
> bit difficult (this would probably involve adding a field to
> QemuOptDesc, and I don't really want to do that), but what we can do
> instead is to at least advise the user that the options we print are all
> of the creation options and that we might not support amending all of
> them.
>
> There is a Bugzilla for this here:
> https://bugzilla.redhat.com/show_bug.cgi?id=1537956
>
> On the way to address these issues, there is more to be done, though.
> bdrv_amend_options() does not have an Error parameter yet, and there is
> no real excuse for that.
>
> Also, "qemu-img create -o help" has its own little issue with formats
> that do not support creation:
>
> $ qemu-img create -f bochs -o help
> Supported options:
> qemu-img: util/qemu-option.c:219:
> qemu_opts_print_help: Assertion `list' failed.
> [1] 24831 abort (core dumped) qemu-img create -f bochs -o help
>
> Let's fix that, too.
>
>
> v2:
> - Patch 2: [Eric]
> - Use error_setg_errno() where possible
> - Use assertions instead of error messages where that makes sense
> - Rephrase an error message since we're already touching it
>
>
> git-backport-diff against v1:
>
> Key:
> [----] : patches are identical
> [####] : number of functional differences between upstream/downstream patch
> [down] : patch is downstream-only
> The flags [FC] indicate (F)unctional and (C)ontextual differences,
> respectively
>
> 001/7:[----] [--] 'qemu-img: Amendment support implies create_opts'
> 002/7:[0042] [FC] 'block: Add Error parameter to bdrv_amend_options'
> 003/7:[----] [--] 'qemu-option: Pull out "Supported options" print'
> 004/7:[----] [--] 'qemu-img: Add print_amend_option_help()'
> 005/7:[----] [--] 'qemu-img: Recognize no creation support in -o help'
> 006/7:[----] [--] 'iotests: Test help option for unsupporting formats'
> 007/7:[----] [--] 'iotests: Rework 113'
>
>
> Max Reitz (7):
> qemu-img: Amendment support implies create_opts
> block: Add Error parameter to bdrv_amend_options
> qemu-option: Pull out "Supported options" print
> qemu-img: Add print_amend_option_help()
> qemu-img: Recognize no creation support in -o help
> iotests: Test help option for unsupporting formats
> iotests: Rework 113
>
> include/block/block.h | 3 +-
> include/block/block_int.h | 3 +-
> block.c | 8 ++++--
> block/qcow2.c | 72
> ++++++++++++++++++++++++++--------------------
> qemu-img.c | 52 +++++++++++++++++++++++++++++----
> util/qemu-option.c | 1 -
> tests/qemu-iotests/060.out | 4 +--
> tests/qemu-iotests/061.out | 7 -----
> tests/qemu-iotests/080.out | 4 +--
> tests/qemu-iotests/082 | 9 ++++++
> tests/qemu-iotests/082.out | 53 +++++++++++++++++++++++-----------
> tests/qemu-iotests/112.out | 3 --
> tests/qemu-iotests/113 | 19 ++++++------
> tests/qemu-iotests/113.out | 7 +++--
> 14 files changed, 159 insertions(+), 86 deletions(-)
Applied to my block branch.
Max
signature.asc
Description: OpenPGP digital signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-block] [PATCH v2 0/7] qemu-img: Improve option help for amend,
Max Reitz <=