[libvirt] [PATCH v3 52/52] qemu: Store default CPU in domain XML
jtomko at redhat.com
Tue Nov 12 15:10:34 UTC 2019
On Tue, Nov 05, 2019 at 02:27:50PM +0100, Jiri Denemark wrote:
>When starting a domain without a CPU model specified in the domain XML,
>QEMU will choose a default one. Which is fine unless the domain gets
>migrated to another host because libvirt doesn't perform any CPU ABI
>checks and the virtual CPU provided by QEMU on the destination host can
>differ from the one on the source host.
>With QEMU 4.2.0 we can probe for the default CPU model used by QEMU for
>a particular machine type and store it in the domain XML. This way the
>chosen CPU model is more visible to users and libvirt will make sure
>the guest will see the exact same CPU after migration.
>Architecture specific notes
>- aarch64: We only set the default CPU for TCG domains as KVM requires
> explicit "-cpu host" to work.
>- ppc64: The default CPU for KVM is "host" thanks to some hacks in QEMU,
> we will translate the default model to the model corresponding to the
> host CPU ("POWER8" on a Power8 host, "POWER9" on Power9 host, etc.).
> This is not a problem as the corresponding CPU model is in fact an
> alias for "host". This is probably not ideal, but it's not wrong and
> the default virtual CPU configured by libvirt is the same QEMU would
> use. TCG uses various CPU models depending on machine type and its
>- s390x: The default CPU for KVM is "host" while TCG defaults to "qemu".
>- x86_64: The default CPU model (qemu64) is not runnable on any host
> with KVM, but QEMU just disables unavailable features and starts
>Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> Version 2:
> - new test cases
> Version 3:
> - enable default CPU for KVM on s390 and ppc64
> - handle "host" default CPU
Reviewed-by: Ján Tomko <jtomko at redhat.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 488 bytes
Desc: not available
More information about the libvir-list