[libvirt] [PATCH 1/2] Introduce GIC feature

John Ferlan jferlan at redhat.com
Thu Apr 30 12:03:30 UTC 2015



On 04/30/2015 07:53 AM, Michal Privoznik wrote:
...

>>> +            }
>>> +            def->features[val] = VIR_TRISTATE_SWITCH_ON;
>>> +            ctxt->node = node;
>>> +            break;
>>> +
>>>          /* coverity[dead_error_begin] */
>>>          case VIR_DOMAIN_FEATURE_LAST:
>>>              break;
>>> @@ -16443,6 +16461,14 @@ virDomainDefFeaturesCheckABIStability(virDomainDefPtr src,
>>>          return false;
>>>      }
>>>  
>>> +    /* GIC version */
>>> +    if (src->gic_version != dst->gic_version) {
>>> +        virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
>>> +                       _("Source GIC version '%u' does not match destination '%u'"),
>>> +                       src->gic_version, dst->gic_version);
>>> +        return false;
>>> +    }
>>> +
>>
>> Obviously if the gic_version is enabled, so is gic; however, what if gic_
> 
> Er, what?
> 

Must've been distracted and lost my train of thought.  I was probably
going for the if gic_version was 0 (as in optionally not set), then is
the GIC bit checked... I probably started off into the code and then got
distracted.  But I see it is so it's a nothing.

John
>>
>>>      /* hyperv */
>>>      if (src->features[VIR_DOMAIN_FEATURE_HYPERV] == VIR_TRISTATE_SWITCH_ON) {
>>>          for (i = 0; i < VIR_DOMAIN_HYPERV_LAST; i++) {
>>> @@ -20996,6 +21022,12 @@ virDomainDefFormatInternal(virDomainDefPtr def,
>>>                  virBufferAddLit(buf, "</capabilities>\n");
>>>                  break;
>>>  
>>> +            case VIR_DOMAIN_FEATURE_GIC:
>>> +                if (def->features[i] == VIR_TRISTATE_SWITCH_ON)
>>> +                    virBufferAsprintf(buf, "<gic version='%u'/>\n",
>>> +                                      def->gic_version);
>>> +                break;
>>> +
>>
> 
> Michal
> 




More information about the libvir-list mailing list