diff options
author | Eduardo Habkost <ehabkost@redhat.com> | 2014-01-20 14:41:09 -0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2014-02-03 17:33:54 +0100 |
commit | 7171a3933f2ee8cb984fd64c59ca081f39b943a4 (patch) | |
tree | b5e704b4a59827e481b2e7029d93556150ef0b5f /target-i386 | |
parent | 81e207707e7b6204f64451779d752f23777ed451 (diff) | |
download | qemu-7171a3933f2ee8cb984fd64c59ca081f39b943a4.zip qemu-7171a3933f2ee8cb984fd64c59ca081f39b943a4.tar.gz qemu-7171a3933f2ee8cb984fd64c59ca081f39b943a4.tar.bz2 |
target-i386: kvm_cpu_fill_host(): No need to check level
There's no need to check level (CPUID[0].EAX) before calling
kvm_arch_get_supported_cpuid(s, 0x7, 0, R_EBX), because:
* The kernel won't return any entry for CPUID 7 if CPUID[0].EAX is < 7
on the host (See kvm_dev_ioctl_get_cpuid() on the kernel code);
* kvm_arch_get_supported_cpuid() will return 0 if no entry is returned
by the kernel for the requested leaf.
This will simplify the kvm_cpu_fill_host() code a little.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target-i386')
-rw-r--r-- | target-i386/cpu.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/target-i386/cpu.c b/target-i386/cpu.c index 07f7f82..05138bd 100644 --- a/target-i386/cpu.c +++ b/target-i386/cpu.c @@ -1165,12 +1165,8 @@ static void kvm_cpu_fill_host(x86_def_t *x86_cpu_def) x86_cpu_def->features[FEAT_1_ECX] = kvm_arch_get_supported_cpuid(s, 0x1, 0, R_ECX); - if (x86_cpu_def->level >= 7) { - x86_cpu_def->features[FEAT_7_0_EBX] = - kvm_arch_get_supported_cpuid(s, 0x7, 0, R_EBX); - } else { - x86_cpu_def->features[FEAT_7_0_EBX] = 0; - } + x86_cpu_def->features[FEAT_7_0_EBX] = + kvm_arch_get_supported_cpuid(s, 0x7, 0, R_EBX); x86_cpu_def->xlevel = kvm_arch_get_supported_cpuid(s, 0x80000000, 0, R_EAX); x86_cpu_def->features[FEAT_8000_0001_EDX] = |