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 <aurel...@aurel32.net>
>> Cc: Paolo Bonzini <pbonz...@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
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to