On Mon, 2018-02-12 at 16:05 -0500, John Ferlan wrote:
> qemuDomainDefEnableDefaultFeatures(virDomainDefPtr def,
> virQEMUCapsPtr qemuCaps)
> {
> - virGICVersion version;
> -
> - /* The virt machine type always uses GIC: if the relevant element
> + /* The virt machine type always uses GIC: if the relevant information
> * was not included in the domain XML, we need to choose a suitable
> * GIC version ourselves */
> - if (def->features[VIR_DOMAIN_FEATURE_GIC] == VIR_TRISTATE_SWITCH_ABSENT
&&
> - qemuDomainIsVirt(def)) {
> + if ((def->features[VIR_DOMAIN_FEATURE_GIC] == VIR_TRISTATE_SWITCH_ABSENT
&&
> + qemuDomainIsVirt(def)) ||
> + (def->features[VIR_DOMAIN_FEATURE_GIC] == VIR_TRISTATE_SWITCH_ON
&&
And patch3 (e.g. verification) takes care of us if this is "on", but
!qemuDomainIsVirt(def) ends up being true... It's a tangled web.
That's correct.
> + def->gic_version == VIR_GIC_VERSION_NONE)) {
> + virGICVersion version;
>
> VIR_DEBUG("Looking for usable GIC version in domain
capabilities");
> for (version = VIR_GIC_VERSION_LAST - 1;
> @@ -2878,17 +2879,17 @@ qemuDomainDefEnableDefaultFeatures(virDomainDefPtr def,
> }
> }
>
FWIW: There's a hunk above here which notes something about bz
1414081... If one goes and reads that bz, one finds it's closed notabug.
In any case, there's a lot of verbiage there.. Can any of it be shaved?
Not a lot, I don't think... Maybe
We'll want to revisit this once MSI support for GICv3 has been
implemented in QEMU.
but that's about it, everything else still applies.
--
Andrea Bolognani / Red Hat / Virtualization