[libvirt] [PATCH] gic: Introduce VIR_GIC_VERSION_DEFAULT alias

John Ferlan jferlan at redhat.com
Fri Feb 19 16:05:06 UTC 2016



On 02/18/2016 10:28 AM, Andrea Bolognani wrote:
> GIC v2 is the default, but checking against that specific version when
> we want to know whether the default has been selected is potentially
> error prone; using an alias instead makes it safer.
> ---
>  src/qemu/qemu_command.c | 7 +++----
>  src/qemu/qemu_domain.c  | 4 ++--
>  src/util/virgic.h       | 3 +++
>  3 files changed, 8 insertions(+), 6 deletions(-)
> 

This works, but so does I think changing VIR_GIC_VERSION_2 in virgic.h
to VIR_GIC_VERSION_DEFAULT

ACK either way, but I think changing _2 to _DEFAULT would be better...

John


> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index b751f04..287a2b9 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
> @@ -5306,10 +5306,9 @@ qemuBuildMachineCommandLine(virCommandPtr cmd,
>                      return -1;
>                  }
>  
> -                /* 2 is the default, so we don't put it as option for
> -                 * backwards compatibility
> -                 */
> -                if (def->gic_version != VIR_GIC_VERSION_2) {
> +                /* The default GIC version should not be specified on the
> +                 * QEMU commandline for backwards compatibility reasons */
> +                if (def->gic_version != VIR_GIC_VERSION_DEFAULT) {
>                      if (!virQEMUCapsGet(qemuCaps,
>                                          QEMU_CAPS_MACH_VIRT_GIC_VERSION)) {
>                          virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
> diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
> index c6ff0da..99ef696 100644
> --- a/src/qemu/qemu_domain.c
> +++ b/src/qemu/qemu_domain.c
> @@ -1264,10 +1264,10 @@ qemuDomainDefEnableDefaultFeatures(virDomainDefPtr def)
>          break;
>      }
>  
> -    /* Default to GIC v2 if no version was specified */
> +    /* Use the default GIC version if no version was specified */
>      if (def->features[VIR_DOMAIN_FEATURE_GIC] == VIR_TRISTATE_SWITCH_ON &&
>          def->gic_version == VIR_GIC_VERSION_NONE)
> -        def->gic_version = VIR_GIC_VERSION_2;
> +        def->gic_version = VIR_GIC_VERSION_DEFAULT;
>  }
>  
>  
> diff --git a/src/util/virgic.h b/src/util/virgic.h
> index a2ba300..470ce95 100644
> --- a/src/util/virgic.h
> +++ b/src/util/virgic.h
> @@ -35,4 +35,7 @@ typedef enum {
>  
>  VIR_ENUM_DECL(virGICVersion);
>  
> +/* Consider GIC v2 the default */
> +# define VIR_GIC_VERSION_DEFAULT VIR_GIC_VERSION_2
> +
>  #endif /* __VIR_GIC_H__ */
> 




More information about the libvir-list mailing list