qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 2/3] net: Restore printing of the help text with "-nic help"


From: Claudio Fontana
Subject: Re: [PATCH 2/3] net: Restore printing of the help text with "-nic help"
Date: Tue, 8 Nov 2022 10:49:07 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.4.0

On 11/4/22 13:57, Thomas Huth wrote:
> Running QEMU with "-nic help" used to work in QEMU 5.2 and earlier versions
> (it showed the available netdev backends), but this feature got broken during
> some refactoring in version 6.0. Let's restore the old behavior, and while
> we're at it, let's also print the available NIC models here now since this
> option can be used to configure both, netdev backend and model in one go.
> 
> Fixes: ad6f932fe8 ("net: do not exit on "netdev_add help" monitor command")
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  net/net.c | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
> 
> diff --git a/net/net.c b/net/net.c
> index c0516a8067..b4b8f2a9cc 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -1571,8 +1571,18 @@ static int net_param_nic(void *dummy, QemuOpts *opts, 
> Error **errp)
>      const char *type;
>  
>      type = qemu_opt_get(opts, "type");
> -    if (type && g_str_equal(type, "none")) {
> -        return 0;    /* Nothing to do, default_net is cleared in vl.c */
> +    if (type) {
> +        if (g_str_equal(type, "none")) {
> +            return 0;    /* Nothing to do, default_net is cleared in vl.c */
> +        }
> +        if (is_help_option(type)) {
> +            GPtrArray *nic_models = qemu_get_nic_models(TYPE_DEVICE);
> +            show_netdevs();
> +            printf("\n");
> +            qemu_show_nic_models(type, (const char **)nic_models->pdata);
> +            g_ptr_array_free(nic_models, true);

nit: would not the order:

> +            GPtrArray *nic_models;
> +            show_netdevs();
> +            printf("\n");
> +            nic_models = qemu_get_nic_models(TYPE_DEVICE);
> +            qemu_show_nic_models(type, (const char **)nic_models->pdata);
> +            g_ptr_array_free(nic_models, true);

flow more logically?

Ciao

C

> +            exit(0);
> +        }
>      }
>  
>      idx = nic_get_free_idx();




reply via email to

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