qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [Avocado-devel] [PATCH] net/slirp: Tell the users when


From: Thomas Huth
Subject: Re: [Qemu-devel] [Avocado-devel] [PATCH] net/slirp: Tell the users when they are using deprecated options
Date: Wed, 13 Jan 2016 08:27:58 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0

On 13.01.2016 04:13, Jason Wang wrote:
> 
> 
> On 01/13/2016 10:58 AM, Jason Wang wrote:
>>
>> On 01/12/2016 07:45 PM, Cleber Rosa wrote:
>>> ----- Original Message -----
>>>> From: "Thomas Huth" <address@hidden>
>>>> To: "Jason Wang" <address@hidden>, "Jan Kiszka" <address@hidden>, 
>>>> address@hidden
>>>> Cc: "Paolo Bonzini" <address@hidden>, address@hidden, "Markus Armbruster" 
>>>> <address@hidden>
>>>> Sent: Tuesday, January 12, 2016 5:26:36 AM
>>>> Subject: Re: [Qemu-devel] [PATCH] net/slirp: Tell the users when they are 
>>>> using deprecated options
>>>>
>>>> On 12.01.2016 04:42, Jason Wang wrote:
>>>>> On 01/11/2016 11:55 PM, Thomas Huth wrote:
>>>>>> On 15.12.2015 09:35, Thomas Huth wrote:
>>>>>>> We don't want to support the legacy -tftp, -bootp, -smb and
>>>>>>> -net channel options forever. So let's start telling the users
>>>>>>> that they will go away in a future version.
>>>>>>>
>>>>>>> Signed-off-by: Thomas Huth <address@hidden>
>>>>>>> ---
>>>>>>>  net/slirp.c | 3 +++
>>>>>>>  os-posix.c  | 3 +++
>>>>>>>  vl.c        | 6 ++++++
>>>>>>>  3 files changed, 12 insertions(+)
>>>>>>>
>>>>>>> diff --git a/net/slirp.c b/net/slirp.c
>>>>>>> index f505570..65e3766 100644
>>>>>>> --- a/net/slirp.c
>>>>>>> +++ b/net/slirp.c
>>>>>>> @@ -784,6 +784,9 @@ int net_slirp_parse_legacy(QemuOptsList *opts_list,
>>>>>>> const char *optarg, int *ret
>>>>>>>          return 0;
>>>>>>>      }
>>>>>>>  
>>>>>>> +    error_report("The -net channel option is deprecated and "
>>>>>>> +                 "will be removed in a future version.");
>>>>>>> +
>>>>>>>      /* handle legacy -net channel,port:chr */
>>>>>>>      optarg += strlen("channel,");
>>>>>>>  
>>>>>>> diff --git a/os-posix.c b/os-posix.c
>>>>>>> index e4da406..3f62f7c 100644
>>>>>>> --- a/os-posix.c
>>>>>>> +++ b/os-posix.c
>>>>>>> @@ -40,6 +40,7 @@
>>>>>>>  #include "net/slirp.h"
>>>>>>>  #include "qemu-options.h"
>>>>>>>  #include "qemu/rcu.h"
>>>>>>> +#include "qemu/error-report.h"
>>>>>>>  
>>>>>>>  #ifdef CONFIG_LINUX
>>>>>>>  #include <sys/prctl.h>
>>>>>>> @@ -139,6 +140,8 @@ void os_parse_cmd_args(int index, const char 
>>>>>>> *optarg)
>>>>>>>      switch (index) {
>>>>>>>  #ifdef CONFIG_SLIRP
>>>>>>>      case QEMU_OPTION_smb:
>>>>>>> +        error_report("The -smb option is deprecated and "
>>>>>>> +                     "will be removed in a future version.");
>>>>>>>          if (net_slirp_smb(optarg) < 0)
>>>>>>>              exit(1);
>>>>>>>          break;
>>>>>>> diff --git a/vl.c b/vl.c
>>>>>>> index 4211ff1..fa829c0 100644
>>>>>>> --- a/vl.c
>>>>>>> +++ b/vl.c
>>>>>>> @@ -3314,12 +3314,18 @@ int main(int argc, char **argv, char **envp)
>>>>>>>  #endif
>>>>>>>  #ifdef CONFIG_SLIRP
>>>>>>>              case QEMU_OPTION_tftp:
>>>>>>> +                error_report("The -tftp option is deprecated and "
>>>>>>> +                             "will be removed in a future version.");
>>>>>>>                  legacy_tftp_prefix = optarg;
>>>>>>>                  break;
>>>>>>>              case QEMU_OPTION_bootp:
>>>>>>> +                error_report("The -bootp option is deprecated and "
>>>>>>> +                             "will be removed in a future version.");
>>>>>>>                  legacy_bootp_filename = optarg;
>>>>>>>                  break;
>>>>>>>              case QEMU_OPTION_redir:
>>>>>>> +                error_report("The -redir option is deprecated and "
>>>>>>> +                             "will be removed in a future version.");
>>>>>>>                  if (net_slirp_redir(optarg) < 0)
>>>>>>>                      exit(1);
>>>>>>>                  break;
>>>>>> *ping*
>>>>>>
>>>>>> Any comments on these old options? I hope Paolo does not want to keep
>>>>>> them, too, forever ;-)
>>>>> I vaguely remember autotest use those options in the past for guest os
>>>>> installation. May need input from autotest guys.
>>>> Looking at
>>>>  
>>>> https://github.com/avocado-framework/avocado-vt/blob/master/virttest/qemu_vm.py
>>>> it seems like that latest incarnation of autotest is doing it
>>>> right already:
>>>> ...
>>>>         def add_tftp(devices, filename):
>>>>             # If the new syntax is supported, don't add -tftp
>>>>             if "[,tftp=" in devices.get_help_text():
>>>>                 return ""
>>>>             else:
>>>>                 return " -tftp '%s'" % filename
>>>> ...
>>>>         def add_net(devices, vlan, nettype, ifname=None, tftp=None,
>>>>                     bootfile=None, hostfwd=[], netdev_id=None,
>>>>                     netdev_extra_params=None, tapfds=None, script=None,
>>>>                     downscript=None, vhost=None, queues=None, 
>>>> vhostfds=None,
>>>>                     add_queues=None, helper=None, add_tapfd=None,
>>>>                     add_vhostfd=None, vhostforce=None):
>>>> ...
>>>>            elif mode == "user":
>>>>                 if tftp and "[,tftp=" in devices.get_help_text():
>>>>                     cmd += ",tftp='%s'" % tftp
>>>>                     cmd_nd = cmd
>>>> ... etc ...
>>>>
>>>> So I think that avocado should be fine already.
>>> It should.
>>>
>>> Avocado-VT can usually handle whatever version of QEMU is thrown at it
>>> because it usually checks for specific features and command syntax.
>>>
>>> So, if a feature is removed and Avocado-VT is not handling that properly,
>>> then it's a bug on "our" side.
>>>
>>> Cleber.
>> Sounds very cool.
>>
>> Apply this to my -net.
>>
>> Thanks everyone.
> 
> Rethinking about this.  I'm not quite sure we can remove those
> especially "-net user". Google qemu "-net user" gives about 15,900
> results (and the first link is qemu wiki). Maybe we can replace "will be
> removed in a future version." with something like "was suggested to use
> -netdev user,XXX" instead?

This patch was not about removing "-net user", only about removing the
standalone options "-tftp", "-smb", "-bootp", "-redir" and "-net
channel" which have equivalents with "-netdev user,..." (or
"-netd user,...").

Anyway, since Paolo requested to rework this patch to include hints for
what should be used instead (which is a good idea), I'm going to rewrite
my patch, so please stay tuned for a new version.

 Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]