[libvirt] [Qemu-devel] [PATCH v2 2/4] net: Deprecate the "name" parameter of -net

Philippe Mathieu-Daudé f4bug at amsat.org
Thu Sep 20 10:14:14 UTC 2018


On 9/20/18 10:50 AM, Thomas Huth wrote:
>  In early times, network backends were specified by a "vlan" and "name"
> tuple. With the introduction of netdevs, the "name" was replaced by an
> "id" (which is supposed to be unique), but the "name" parameter stayed
> as an alias which could be used instead of "id". Unfortunately, we miss
> the duplication check for "name":
> 
>  $ qemu-system-x86_64 -net user,name=n1 -net user,name=n1
> 
> ... starts without an error, while "id" correctly complains:
> 
>  $ qemu-system-x86_64 -net user,id=n1 -net user,id=n1
>  qemu-system-x86_64: -net user,id=n1: Duplicate ID 'n1' for net
> 
> Instead of trying to fix the code for the legacy "name" parameter, let's
> rather get rid of this old interface and deprecate the "name" parameter
> now - this will also be less confusing for the users in the long run.
> 
> Signed-off-by: Thomas Huth <thuth at redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <f4bug at amsat.org>

> ---
>  net/net.c            | 4 ++++
>  qemu-deprecated.texi | 5 +++++
>  2 files changed, 9 insertions(+)
> 
> diff --git a/net/net.c b/net/net.c
> index 2a31339..cdcd5cf 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -984,6 +984,10 @@ static int net_client_init1(const void *object, bool is_netdev, Error **errp)
>          /* missing optional values have been initialized to "all bits zero" */
>          name = net->has_id ? net->id : net->name;
>  
> +        if (net->has_name) {
> +            warn_report("The 'name' parameter is deprecated, use 'id' instead");
> +        }
> +
>          /* Map the old options to the new flat type */
>          switch (opts->type) {
>          case NET_LEGACY_OPTIONS_TYPE_NONE:
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index 8a2e399..60fd7f7 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -83,6 +83,11 @@ The 'file' driver for drives is no longer appropriate for character or host
>  devices and will only accept regular files (S_IFREG). The correct driver
>  for these file types is 'host_cdrom' or 'host_device' as appropriate.
>  
> + at subsection -net ...,name=@var{name} (since 3.1)
> +
> +The @option{name} parameter of the @option{-net} option is a synonym
> +for the @option{id} parameter, which should now be used instead.
> +
>  @section QEMU Machine Protocol (QMP) commands
>  
>  @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0)
> 




More information about the libvir-list mailing list