Re: [PATCH 17/41] cpu: Special case models == NULL in cpuGetModels

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

 




On 08/12/2016 09:33 AM, Jiri Denemark wrote:
> Some CPU drivers (such as arm) do not provide list of CPUs libvirt
> supports and just pass any CPU model from domain XML directly to QEMU.
> Such driver need to return models == NULL and success from cpuGetModels.
> 
> Signed-off-by: Jiri Denemark <jdenemar@xxxxxxxxxx>
> ---
>  src/cpu/cpu.c      | 15 +++++++++------
>  src/libvirt-host.c |  3 ++-
>  tools/virsh-host.c | 10 +++++++---
>  3 files changed, 18 insertions(+), 10 deletions(-)
> 

[...]

> diff --git a/src/libvirt-host.c b/src/libvirt-host.c
> index 2a3de03..335798a 100644
> --- a/src/libvirt-host.c
> +++ b/src/libvirt-host.c
> @@ -1005,7 +1005,8 @@ virConnectCompareCPU(virConnectPtr conn,
>   *
>   * Get the list of supported CPU models for a specific architecture.
>   *
> - * Returns -1 on error, number of elements in @models on success.
> + * Returns -1 on error, number of elements in @models on success (0 means
> + * libvirt accepts any CPU model).
>   */
>  int
>  virConnectGetCPUModelNames(virConnectPtr conn, const char *arch, char ***models,
> diff --git a/tools/virsh-host.c b/tools/virsh-host.c
> index 57f0c0e..7ac2812 100644
> --- a/tools/virsh-host.c
> +++ b/tools/virsh-host.c
> @@ -1127,9 +1127,13 @@ cmdCPUModelNames(vshControl *ctl, const vshCmd *cmd)
>          return false;
>      }
>  
> -    for (i = 0; i < nmodels; i++) {
> -        vshPrint(ctl, "%s\n", models[i]);
> -        VIR_FREE(models[i]);
> +    if (nmodels == 0) {
> +        vshPrint(ctl, "%s\n", _("all CPU models are accepted"));
> +    } else {
> +        for (i = 0; i < nmodels; i++) {
> +            vshPrint(ctl, "%s\n", models[i]);
> +            VIR_FREE(models[i]);
> +        }

I seem to recall some recent work around the -q[uiet] switch - is that
something that this code needs to be concerned with?  (as silly as that
seems while I'm typing it!)


>      }
>      VIR_FREE(models);
>  
> 

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]