[libvirt PATCH v2] qemu: fixing auto-detecting binary in domain capabilities

Boris Fiuczynski fiuczy at linux.ibm.com
Mon Jan 20 15:39:44 UTC 2020


On 1/17/20 7:24 PM, Daniel P. Berrangé wrote:
> The virConnectGetDomainCapabilities API accepts either a binary path
> to the emulator, or desired guest arch. If guest arch is not given,
> then the host arch is assumed.

I forgot to mention that virConnectBaselineHypervisorCPU and 
virConnectCompareHypervisorCPU APIs are effected in the same way.

> 
> In the case where the binary is not given, the code tried to find the
> emulator binary in the existing list of cached emulator capabilities.
> This is not valid since we switched to lazy population of the cache in:
> 
>    commit 3dd91af01f30c5bda6328454ef49f3afece755d6
>    Author: Daniel P. Berrangé <berrange at redhat.com>
>    Date:   Mon Dec 2 13:04:26 2019 +0000
> 
>      qemu: stop creating capabilities at driver startup
> 
> As a result of this change, if there are no persistent guests defined
> using the requested guest architecture, virConnectGetDomainCapabilities
> will fail to find an emulator binary.
> 
> The solution is to stop relying on the cached capabilities to find the
> binary and instead use the same logic we use to pick default a binary
> per arch when populating capabilities.
> 
> Tested-by: Richard W.M. Jones <rjones at redhat.com>
> Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
...
-- 
Mit freundlichen Grüßen/Kind regards
    Boris Fiuczynski

IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Matthias Hartmann
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294





More information about the libvir-list mailing list