From: "Andreas Färber" <afaerber@suse.de>
To: Paolo Bonzini <pbonzini@redhat.com>,
Eduardo Habkost <ehabkost@redhat.com>,
qemu-devel@nongnu.org
Cc: Aurelien Jarno <aurelien@aurel32.net>,
kvm@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH v3 0/6] target-i386: Make most CPU models work with "enforce" out of the box
Date: Tue, 04 Nov 2014 15:52:09 +0100 [thread overview]
Message-ID: <5458E819.6080201@suse.de> (raw)
In-Reply-To: <542F204B.9070606@redhat.com>
Am 04.10.2014 um 00:16 schrieb Paolo Bonzini:
> Il 03/10/2014 21:39, Eduardo Habkost ha scritto:
>> Changes v2 -> v3:
>> * None. This is just a rebase against latest qemu.git master (commit b00a0dd)
>>
>> Changes v1 -> v2:
>> * Commit message and comment changes.
>> * Update compat code to change pc-*-2.1, not pc-*-2.0.
>> * Added patch to disable SVM by default in KVM mode.
>>
>> Most of the bits that make "enforce" breaks were introduced in 2010 by commit
>> 8560efed6a72a816c0115f41ddb9d79f7ce63f28. The intention behind that commit made
>> sense, the only problem is that we can't guarantee guest ABI stability across
>> hosts if we simply rely on trimming of CPU features based on host capabilities.
>>
>> So, this series remove CPUID bits from the CPU model definitions so they become
>> defaults that: 1) won't unexpectly stop working when we start using the
>> "enforce" flag; 2) won't silently break the guest ABI when TCG or KVM start
>> supporting new features.
>>
>> There's only one non-trivial case left: the qemu32/qemu64 models. The problem
>> with them is that we have conflicting expectations about it, from different
>> users:
>>
>> TCG users expect the default CPU model to contain most TCG-supported features
>> (and it makes sense). See, for example, commit
>> f1e00a9cf326acc1f2386a72525af8859852e1df.
>>
>> KVM users expect the default CPU model to be a conservative choice which will
>> work on most host CPUs (and will only contain features that are supported by
>> KVM).
>>
>> We could solve the qemu32/qemu64 issue by having different defaults for TCG and
>> KVM. But we have existing management code (libvirt) that already expects qemu32
>> or qemu64 to be the default, and changing the default would break that code. I
>> will send an RFC to address that later.
>>
>> Cc: Aurelien Jarno <aurelien@aurel32.net>
>> Cc: Paolo Bonzini <pbonzini@redhat.com>
>> Cc: kvm@vger.kernel.org
>>
>> Eduardo Habkost (6):
>> pc: Create pc_compat_2_1() functions
>> target-i386: Rename KVM auto-feature-enable compat function
>> target-i386: Disable CPUID_ACPI by default on KVM mode
>> target-i386: Remove unsupported bits from all CPU models
>> target-i386: Don't enable nested VMX by default
>> target-i386: Disable SVM by default in KVM mode
>>
>> hw/i386/pc_piix.c | 22 ++++++++++++++++++----
>> hw/i386/pc_q35.c | 18 ++++++++++++++++--
>> target-i386/cpu.c | 42 ++++++++++++++++++++++++++++--------------
>> target-i386/cpu.h | 3 ++-
>> 4 files changed, 64 insertions(+), 21 deletions(-)
>>
>
> Andreas, are you picking up this?
Thanks, applied to qom-cpu:
https://github.com/afaerber/qemu-cpu/commits/qom-cpu
I do still have some comments, but let's get this in first.
Regards,
Andreas
--
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 21284 AG Nürnberg
prev parent reply other threads:[~2014-11-04 14:52 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-03 19:39 [Qemu-devel] [PATCH v3 0/6] target-i386: Make most CPU models work with "enforce" out of the box Eduardo Habkost
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 1/6] pc: Create pc_compat_2_1() functions Eduardo Habkost
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 2/6] target-i386: Rename KVM auto-feature-enable compat function Eduardo Habkost
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 3/6] target-i386: Disable CPUID_ACPI by default on KVM mode Eduardo Habkost
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 4/6] target-i386: Remove unsupported bits from all CPU models Eduardo Habkost
2014-10-29 17:26 ` Andreas Färber
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 5/6] target-i386: Don't enable nested VMX by default Eduardo Habkost
2014-10-29 17:40 ` Andreas Färber
2014-10-29 19:38 ` Eduardo Habkost
2014-10-30 7:17 ` Paolo Bonzini
2014-10-03 19:39 ` [Qemu-devel] [PATCH v3 6/6] target-i386: Disable SVM by default in KVM mode Eduardo Habkost
2014-10-03 22:16 ` [Qemu-devel] [PATCH v3 0/6] target-i386: Make most CPU models work with "enforce" out of the box Paolo Bonzini
2014-11-04 14:52 ` Andreas Färber [this message]
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=5458E819.6080201@suse.de \
--to=afaerber@suse.de \
--cc=aurelien@aurel32.net \
--cc=ehabkost@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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 NNTP newsgroup(s).