public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "berrange at redhat dot com" <sourceware-bugzilla@sourceware.org>
To: glibc-bugs@sourceware.org
Subject: [Bug dynamic-link/27201] Consider disabling x86-64-v2 support check
Date: Thu, 21 Jan 2021 12:45:26 +0000	[thread overview]
Message-ID: <bug-27201-131-oviXRvjyV3@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-27201-131@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=27201

Daniel Berrange <berrange at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |berrange at redhat dot com

--- Comment #13 from Daniel Berrange <berrange at redhat dot com> ---
(In reply to H.J. Lu from comment #6)
> (In reply to H.J. Lu from comment #5)
> > 
> > virt-manager defaults to "Copy host CPU configuration".  On
> > Westmere, when I selected the qemu64 device model, I couldn't
> > even power on the VM since my host CPU isn't compatible with
> > qemu64 due to the missing SVM feature.
> 
> Since Intel CPUs don't have SVM and the qemu64 device model requires
> SVM, how can libvirt default to the qemu64 model?

There's some subtle behavioural things going on here as there's two different
ways qemu64 can get used.

In the libvirt XML config, if *no* <cpu> element is present at all, then QEMU's
built-in default "qemu64" model is used.   When it does this, it operates in a
relaxed mode where any features in qemu64 that don't exist in the host and
dropped from the CPU exposed to the guest. IIRC, there is a message in
/var/log/libvirt/qemu/$GUEST.log for each feature that is dropped in this way.
In this mode you can use qemu64 on an Intel host and "svm" will be dropped. I
don't believe you can configure this way in virt-manager, as it tries hard to
ensure you always have an explicit CPU specified to follow best practice. If
you want to test it use 'virsh edit $GUEST' to manually delete the <cpu>

Conversely if you specify a <cpu mode='custom''><model>qemu64</model></cpu>,
then it will operate in strict mode, where QEMU will refuse to start the guest
if the host lacks features. In this mode you can NOT use qemu64 on a Intel host
because 'svm' doesn't exist.

Yes, this is confusing, but we have to maintain the historical behaviour for
upgrade / live migration compatibility.

Well maintained applications will *always* specify a <cpu> in libvirt and pick
a sane modern model.  If live migration is not required, then using simple
host-passthrough is simplest. If live migration is required, then a named model
that matches your host CPU generation is best (Westmere, IvyBridge, Nehalm,
Broadwell, etc).  This is described

https://qemu.readthedocs.io/en/latest/system/target-i386.html#recommendations-for-kvm-cpu-model-configuration-on-x86-hosts

All widely used libvirt apps that are actively maintained by their upstream,
should be doing the thing thing in this area. oVirt, OpenStack, virt-manager,
virt-install, GNOME Boxes, Cockpit all do the right thing. Unfortunately the
'oz' program that Florian mentions is barely maintained and not following
recommendations, thus hitting the problem due to its reliance on the builtin
defualt.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2021-01-21 12:45 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-18 14:23 [Bug dynamic-link/27201] New: " fweimer at redhat dot com
2021-01-18 15:35 ` [Bug dynamic-link/27201] " hjl.tools at gmail dot com
2021-01-18 20:47 ` hjl.tools at gmail dot com
2021-01-18 20:51 ` fweimer at redhat dot com
2021-01-18 20:58 ` hjl.tools at gmail dot com
2021-01-18 21:06 ` hjl.tools at gmail dot com
2021-01-18 21:10 ` hjl.tools at gmail dot com
2021-01-18 21:20 ` fweimer at redhat dot com
2021-01-18 21:33 ` hjl.tools at gmail dot com
2021-01-18 23:51 ` hjl.tools at gmail dot com
2021-01-19 11:09 ` fweimer at redhat dot com
2021-01-19 12:34 ` hjl.tools at gmail dot com
2021-01-19 16:56 ` hjl.tools at gmail dot com
2021-01-21 12:45 ` berrange at redhat dot com [this message]
2021-01-21 13:00 ` hjl.tools at gmail dot com
2021-01-21 13:58 ` berrange at redhat dot com
2021-01-21 15:12 ` hjl.tools at gmail dot com
2021-01-21 15:17 ` fweimer at redhat dot com
2021-01-21 15:27 ` hjl.tools at gmail dot com
2021-01-21 15:28 ` hjl.tools at gmail dot com
2021-01-21 15:41 ` fweimer at redhat dot com
2021-01-21 15:56 ` hjl.tools at gmail dot com
2021-01-21 23:34 ` hjl.tools at gmail dot com
2021-01-22  9:44 ` berrange at redhat dot com
2021-01-22  9:59 ` fweimer at redhat dot com
2021-01-22 10:13 ` berrange at redhat dot com
2021-01-22 10:19 ` fweimer at redhat dot com
2021-01-28 17:46 ` fweimer at redhat dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-27201-131-oviXRvjyV3@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=glibc-bugs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).