* [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together
@ 2019-08-15 11:06 Kevin Wolf
2019-08-15 12:31 ` Max Reitz
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Kevin Wolf @ 2019-08-15 11:06 UTC (permalink / raw)
To: qemu-block; +Cc: kwolf, jsnow, qemu-devel, mreitz
bdrv_create options specified with -o have no effect when skipping image
creation with -n, so this doesn't make sense. Warn against the misuse
and deprecate the combination so we can make it a hard error later.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
- Hopefully removed the "finger-wagging" that John saw, without stating
that the combination doesn't have a well-defined behaviour (because
skipping image creation and therefore ignoring -o is well-defined
behaviour).
qemu-img.c | 5 +++++
qemu-deprecated.texi | 7 +++++++
2 files changed, 12 insertions(+)
diff --git a/qemu-img.c b/qemu-img.c
index 79983772de..d9321f6418 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -2231,6 +2231,11 @@ static int img_convert(int argc, char **argv)
goto fail_getopt;
}
+ if (skip_create && options) {
+ warn_report("-o has no effect when skipping image creation");
+ warn_report("This will become an error in future QEMU versions.");
+ }
+
s.src_num = argc - optind - 1;
out_filename = s.src_num >= 1 ? argv[argc - 1] : NULL;
diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
index fff07bb2a3..f7680c08e1 100644
--- a/qemu-deprecated.texi
+++ b/qemu-deprecated.texi
@@ -305,6 +305,13 @@ to just export the entire image and then mount only /dev/nbd0p1 than
it is to reinvoke @command{qemu-nbd -c /dev/nbd0} limited to just a
subset of the image.
+@subsection qemu-img convert -n -o (since 4.2.0)
+
+All options specified in @option{-o} are image creation options, so
+they have no effect when used with @option{-n} to skip image creation.
+Silently ignored options can be confusing, so this combination of
+options will be made an error in future versions.
+
@section Build system
@subsection Python 2 support (since 4.1.0)
--
2.20.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together
2019-08-15 11:06 [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together Kevin Wolf
@ 2019-08-15 12:31 ` Max Reitz
2019-08-15 14:55 ` Eric Blake
2019-08-15 15:47 ` John Snow
2 siblings, 0 replies; 4+ messages in thread
From: Max Reitz @ 2019-08-15 12:31 UTC (permalink / raw)
To: Kevin Wolf, qemu-block; +Cc: jsnow, qemu-devel
[-- Attachment #1.1: Type: text/plain, Size: 889 bytes --]
On 15.08.19 13:06, Kevin Wolf wrote:
> bdrv_create options specified with -o have no effect when skipping image
> creation with -n, so this doesn't make sense. Warn against the misuse
> and deprecate the combination so we can make it a hard error later.
>
> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
> ---
>
> - Hopefully removed the "finger-wagging" that John saw, without stating
> that the combination doesn't have a well-defined behaviour (because
> skipping image creation and therefore ignoring -o is well-defined
> behaviour).
The problem is that e.g. the man page never says that -o gives creation
options. It says that “options is a [...] list of format specific
options”, nothing more.
> qemu-img.c | 5 +++++
> qemu-deprecated.texi | 7 +++++++
> 2 files changed, 12 insertions(+)
Reviewed-by: Max Reitz <mreitz@redhat.com>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together
2019-08-15 11:06 [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together Kevin Wolf
2019-08-15 12:31 ` Max Reitz
@ 2019-08-15 14:55 ` Eric Blake
2019-08-15 15:47 ` John Snow
2 siblings, 0 replies; 4+ messages in thread
From: Eric Blake @ 2019-08-15 14:55 UTC (permalink / raw)
To: Kevin Wolf, qemu-block; +Cc: jsnow, qemu-devel, mreitz
[-- Attachment #1.1: Type: text/plain, Size: 497 bytes --]
On 8/15/19 6:06 AM, Kevin Wolf wrote:
> bdrv_create options specified with -o have no effect when skipping image
> creation with -n, so this doesn't make sense. Warn against the misuse
> and deprecate the combination so we can make it a hard error later.
>
> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
> ---
Reviewed-by: Eric Blake <eblake@redhat.com>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together
2019-08-15 11:06 [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together Kevin Wolf
2019-08-15 12:31 ` Max Reitz
2019-08-15 14:55 ` Eric Blake
@ 2019-08-15 15:47 ` John Snow
2 siblings, 0 replies; 4+ messages in thread
From: John Snow @ 2019-08-15 15:47 UTC (permalink / raw)
To: Kevin Wolf, qemu-block; +Cc: qemu-devel, mreitz
On 8/15/19 7:06 AM, Kevin Wolf wrote:
> bdrv_create options specified with -o have no effect when skipping image
> creation with -n, so this doesn't make sense. Warn against the misuse
> and deprecate the combination so we can make it a hard error later.
>
> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
> ---
>
> - Hopefully removed the "finger-wagging" that John saw, without stating
> that the combination doesn't have a well-defined behaviour (because
> skipping image creation and therefore ignoring -o is well-defined
> behaviour).
>
I'm sorry if that critique was in itself a finger-wag :( I'm not always
the best with tone in written language myself.
Arguably this is supposed to be my primary language, too.
> qemu-img.c | 5 +++++
> qemu-deprecated.texi | 7 +++++++
> 2 files changed, 12 insertions(+)
>
> diff --git a/qemu-img.c b/qemu-img.c
> index 79983772de..d9321f6418 100644
> --- a/qemu-img.c
> +++ b/qemu-img.c
> @@ -2231,6 +2231,11 @@ static int img_convert(int argc, char **argv)
> goto fail_getopt;
> }
>
> + if (skip_create && options) {
> + warn_report("-o has no effect when skipping image creation");
> + warn_report("This will become an error in future QEMU versions.");
> + }
> +
> s.src_num = argc - optind - 1;
> out_filename = s.src_num >= 1 ? argv[argc - 1] : NULL;
>
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index fff07bb2a3..f7680c08e1 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -305,6 +305,13 @@ to just export the entire image and then mount only /dev/nbd0p1 than
> it is to reinvoke @command{qemu-nbd -c /dev/nbd0} limited to just a
> subset of the image.
>
> +@subsection qemu-img convert -n -o (since 4.2.0)
> +
> +All options specified in @option{-o} are image creation options, so
> +they have no effect when used with @option{-n} to skip image creation.
> +Silently ignored options can be confusing, so this combination of
> +options will be made an error in future versions.
> +
> @section Build system
>
> @subsection Python 2 support (since 4.1.0)
>
I do think this reads more pleasantly, though, so thank you very much
for that!
Reviewed-by: John Snow <jsnow@redhat.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-08-15 15:48 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-15 11:06 [Qemu-devel] [PATCH v2] qemu-img convert: Deprecate using -n and -o together Kevin Wolf
2019-08-15 12:31 ` Max Reitz
2019-08-15 14:55 ` Eric Blake
2019-08-15 15:47 ` John Snow
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).