mirror of https://github.com/xemu-project/xemu.git
i386: kvm: mask cpuid_ext4_features bits earlier
This way all the filtering by GET_SUPPORTED_CPUID is being done at the same place in the code. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
parent
ea85c9e456
commit
c9da8382c1
|
@ -431,6 +431,9 @@ int kvm_arch_init_vcpu(CPUX86State *env)
|
||||||
env->cpuid_kvm_features &=
|
env->cpuid_kvm_features &=
|
||||||
kvm_arch_get_supported_cpuid(s, KVM_CPUID_FEATURES, 0, R_EAX);
|
kvm_arch_get_supported_cpuid(s, KVM_CPUID_FEATURES, 0, R_EAX);
|
||||||
|
|
||||||
|
env->cpuid_ext4_features &= kvm_arch_get_supported_cpuid(s, 0xC0000001,
|
||||||
|
0, R_EDX);
|
||||||
|
|
||||||
cpuid_i = 0;
|
cpuid_i = 0;
|
||||||
|
|
||||||
/* Paravirtualization CPUIDs */
|
/* Paravirtualization CPUIDs */
|
||||||
|
@ -572,8 +575,6 @@ int kvm_arch_init_vcpu(CPUX86State *env)
|
||||||
|
|
||||||
/* Call Centaur's CPUID instructions they are supported. */
|
/* Call Centaur's CPUID instructions they are supported. */
|
||||||
if (env->cpuid_xlevel2 > 0) {
|
if (env->cpuid_xlevel2 > 0) {
|
||||||
env->cpuid_ext4_features &=
|
|
||||||
kvm_arch_get_supported_cpuid(s, 0xC0000001, 0, R_EDX);
|
|
||||||
cpu_x86_cpuid(env, 0xC0000000, 0, &limit, &unused, &unused, &unused);
|
cpu_x86_cpuid(env, 0xC0000000, 0, &limit, &unused, &unused, &unused);
|
||||||
|
|
||||||
for (i = 0xC0000000; i <= limit; i++) {
|
for (i = 0xC0000000; i <= limit; i++) {
|
||||||
|
|
Loading…
Reference in New Issue