On 01/12/2016 07:45 PM, Cleber Rosa wrote: > > ----- Original Message ----- >> From: "Thomas Huth" <th...@redhat.com> >> To: "Jason Wang" <jasow...@redhat.com>, "Jan Kiszka" >> <jan.kis...@siemens.com>, qemu-devel@nongnu.org >> Cc: "Paolo Bonzini" <pbonz...@redhat.com>, avocado-de...@redhat.com, "Markus >> Armbruster" <arm...@redhat.com> >> 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 <th...@redhat.com> >>>>> --- >>>>> 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. > >> Thomas >> >> >>