[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode
From: |
Jiri Denemark |
Subject: |
Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode |
Date: |
Fri, 20 Oct 2017 14:50:56 +0200 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Fri, Oct 20, 2017 at 13:37:42 +0200, David Hildenbrand wrote:
> On 20.10.2017 13:09, Marc Hartmayer wrote:
> > we recently encountered the problem that the 'host-model' [1] has to be
> > related to the machine type of a domain. We have following problem:
> >
> > Let's assume we've a z13 system with a QEMU 2.9 and we define a
> > domain using the default s390-virtio-ccw machine together with the
> > host-model CPU mode [1]. The definition will have the machine
> > expanded to s390-virtio-ccw-2.9 but retain the host-model CPU mode
> > in the domain definition. In a next step we upgrade to QEMU 2.10
> > (first version to recognize z14). Everything is still fine, even
> > though the machine runs in 2.9 compatibility mode. Finally we
> > upgrade to a z14. As a consequence it is not possible to start the
> > domain anymore as the machine type doesn't support our CPU host
> > model (which is expanded at start time of the domain).
>
> Yes, the host model may vary depending on QEMU version and to some
> degree also on compatibility machines (although I always try to push
> people to not introduce any new such stuff).
>
> Quoting for the libvirt documentation: https://libvirt.org/formatdomain.html
>
> "host-model
> The host-model mode is essentially a shortcut to copying host CPU
> definition from capabilities XML into domain XML. Since the CPU
> definition is copied just before starting a domain, exactly the same XML
> can be used on different hosts while still providing the best guest CPU
> each host supports."
>
> You're telling me that that copying does not happen, which seems to be
> the problematic part about this in my opinion.
>
> So I am not sure if probing anything else (as you noted below) is the
> correct thing to do. Copy it and you have a migration_safe and even
> static version of the _current_ host CPU.
The thing is libvirt calls query-cpu-model-expansion to check what the
host CPU is. This 'host-model' CPU is replaced with the probed CPU model
when a domain starts. The problem described by Marc is that the probed
CPU model cannot be used universally with all machine types. So starting
a domain on such host with machine type s390-virtio-ccw-2.10 works, but
a domain with machine type s390-virtio-ccw-2.9 fails to start with the
same probed CPU model.
Jirka
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, Marc Hartmayer, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, David Hildenbrand, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode,
Jiri Denemark <=
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, Jiri Denemark, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, David Hildenbrand, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, Christian Borntraeger, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, David Hildenbrand, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, Christian Borntraeger, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, David Hildenbrand, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, Christian Borntraeger, 2017/10/20
- Re: [Qemu-devel] [libvirt] Question about the host-model CPU mode, David Hildenbrand, 2017/10/20