[Qemu-devel] [PATCH v2] Print a warning message if the user specified a legacy USB option

Thomas Huth posted 1 patch 6 years, 11 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1493712420-22480-1-git-send-email-thuth@redhat.com
Test checkpatch passed
Test docker passed
Test s390x passed
qemu-options.hx | 8 +++++---
vl.c            | 4 ++++
2 files changed, 9 insertions(+), 3 deletions(-)
[Qemu-devel] [PATCH v2] Print a warning message if the user specified a legacy USB option
Posted by Thomas Huth 6 years, 11 months ago
'-usb' and '-usbdevice' are considered as deprecated nowadays and
we might want to remove these options in a future version of QEMU.
So mark this options as deprecated in the documenation and print out
a warning if they are used to tell the user what to use instead.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 v2: Also update the documentation accordingly

 qemu-options.hx | 8 +++++---
 vl.c            | 4 ++++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/qemu-options.hx b/qemu-options.hx
index f68829f..57bacc5 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -946,12 +946,13 @@ STEXI
 ETEXI
 
 DEF("usb", 0, QEMU_OPTION_usb,
-    "-usb            enable the USB driver (will be the default soon)\n",
+    "-usb            enable the USB driver (if it is not used by default yet)\n",
     QEMU_ARCH_ALL)
 STEXI
 @item -usb
 @findex -usb
-Enable the USB driver (will be the default soon)
+Enable the USB driver (if it is not used by default yet). Note that this
+option is deprecated, please use @code{-M usb=on} instead.
 ETEXI
 
 DEF("usbdevice", HAS_ARG, QEMU_OPTION_usbdevice,
@@ -961,7 +962,8 @@ STEXI
 
 @item -usbdevice @var{devname}
 @findex -usbdevice
-Add the USB device @var{devname}. @xref{usb_devices}.
+Add the USB device @var{devname}. Note that this option is deperecated,
+please use @code{-device usb-...} instead. See also @xref{usb_devices}.
 
 @table @option
 
diff --git a/vl.c b/vl.c
index 42d4bce..0023298 100644
--- a/vl.c
+++ b/vl.c
@@ -3748,10 +3748,14 @@ int main(int argc, char **argv, char **envp)
                 }
                 break;
             case QEMU_OPTION_usb:
+                error_report("'-usb' is deprecated, please use "
+                             "'-M usb=on' instead");
                 olist = qemu_find_opts("machine");
                 qemu_opts_parse_noisily(olist, "usb=on", false);
                 break;
             case QEMU_OPTION_usbdevice:
+                error_report("'-usbdevice' is deprecated, please use "
+                             "'-device usb-...' instead");
                 olist = qemu_find_opts("machine");
                 qemu_opts_parse_noisily(olist, "usb=on", false);
                 add_device_config(DEV_USB, optarg);
-- 
1.8.3.1


Re: [Qemu-devel] [PATCH v2] Print a warning message if the user specified a legacy USB option
Posted by Paolo Bonzini 6 years, 11 months ago

On 02/05/2017 10:07, Thomas Huth wrote:
> '-usb' and '-usbdevice' are considered as deprecated nowadays and
> we might want to remove these options in a future version of QEMU.
> So mark this options as deprecated in the documenation and print out
> a warning if they are used to tell the user what to use instead.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  v2: Also update the documentation accordingly
> 
>  qemu-options.hx | 8 +++++---
>  vl.c            | 4 ++++
>  2 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/qemu-options.hx b/qemu-options.hx
> index f68829f..57bacc5 100644
> --- a/qemu-options.hx
> +++ b/qemu-options.hx
> @@ -946,12 +946,13 @@ STEXI
>  ETEXI
>  
>  DEF("usb", 0, QEMU_OPTION_usb,
> -    "-usb            enable the USB driver (will be the default soon)\n",
> +    "-usb            enable the USB driver (if it is not used by default yet)\n",
>      QEMU_ARCH_ALL)
>  STEXI
>  @item -usb
>  @findex -usb
> -Enable the USB driver (will be the default soon)
> +Enable the USB driver (if it is not used by default yet). Note that this
> +option is deprecated, please use @code{-M usb=on} instead.

This is pointless, "-usb" is just syntactic sugar and doesn't add any
complex logic.

>  ETEXI
>  
>  DEF("usbdevice", HAS_ARG, QEMU_OPTION_usbdevice,
> @@ -961,7 +962,8 @@ STEXI
>  
>  @item -usbdevice @var{devname}
>  @findex -usbdevice
> -Add the USB device @var{devname}. @xref{usb_devices}.
> +Add the USB device @var{devname}. Note that this option is deperecated,
> +please use @code{-device usb-...} instead. See also @xref{usb_devices}.
>  
>  @table @option

This makes sense, but the usb_devices section of the manual still
documents -usbdevice instead of "-device usb-...".

In general, docs/qdev-device-use.txt should be integrated in the manual
before a serious attempt to deprecate "-usbdevice" and "-drive" is made.

Thanks,

Paolo

> diff --git a/vl.c b/vl.c
> index 42d4bce..0023298 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -3748,10 +3748,14 @@ int main(int argc, char **argv, char **envp)
>                  }
>                  break;
>              case QEMU_OPTION_usb:
> +                error_report("'-usb' is deprecated, please use "
> +                             "'-M usb=on' instead");
>                  olist = qemu_find_opts("machine");
>                  qemu_opts_parse_noisily(olist, "usb=on", false);
>                  break;
>              case QEMU_OPTION_usbdevice:
> +                error_report("'-usbdevice' is deprecated, please use "
> +                             "'-device usb-...' instead");
>                  olist = qemu_find_opts("machine");
>                  qemu_opts_parse_noisily(olist, "usb=on", false);
>                  add_device_config(DEV_USB, optarg);
> 

Re: [Qemu-devel] [PATCH v2] Print a warning message if the user specified a legacy USB option
Posted by Thomas Huth 6 years, 11 months ago
On 02.05.2017 10:18, Paolo Bonzini wrote:
> 
> 
> On 02/05/2017 10:07, Thomas Huth wrote:
>> '-usb' and '-usbdevice' are considered as deprecated nowadays and
>> we might want to remove these options in a future version of QEMU.
>> So mark this options as deprecated in the documenation and print out
>> a warning if they are used to tell the user what to use instead.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>>  v2: Also update the documentation accordingly
>>
>>  qemu-options.hx | 8 +++++---
>>  vl.c            | 4 ++++
>>  2 files changed, 9 insertions(+), 3 deletions(-)
>>
>> diff --git a/qemu-options.hx b/qemu-options.hx
>> index f68829f..57bacc5 100644
>> --- a/qemu-options.hx
>> +++ b/qemu-options.hx
>> @@ -946,12 +946,13 @@ STEXI
>>  ETEXI
>>  
>>  DEF("usb", 0, QEMU_OPTION_usb,
>> -    "-usb            enable the USB driver (will be the default soon)\n",
>> +    "-usb            enable the USB driver (if it is not used by default yet)\n",
>>      QEMU_ARCH_ALL)
>>  STEXI
>>  @item -usb
>>  @findex -usb
>> -Enable the USB driver (will be the default soon)
>> +Enable the USB driver (if it is not used by default yet). Note that this
>> +option is deprecated, please use @code{-M usb=on} instead.
> 
> This is pointless, "-usb" is just syntactic sugar and doesn't add any
> complex logic.

Ok.

>>  ETEXI
>>  
>>  DEF("usbdevice", HAS_ARG, QEMU_OPTION_usbdevice,
>> @@ -961,7 +962,8 @@ STEXI
>>  
>>  @item -usbdevice @var{devname}
>>  @findex -usbdevice
>> -Add the USB device @var{devname}. @xref{usb_devices}.
>> +Add the USB device @var{devname}. Note that this option is deperecated,
>> +please use @code{-device usb-...} instead. See also @xref{usb_devices}.
>>  
>>  @table @option
> 
> This makes sense, but the usb_devices section of the manual still
> documents -usbdevice instead of "-device usb-...".

I noticed that, too, after sending my patch ... actually, that section
is really out of date, e.g. it also says that QEMU only "emulates a PCI
UHCI USB controller" which is just not true nowadays anymore... Looks
like we need to spend some effort here to update it properly...

 Thomas