qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 07/15] i386: kvm: kvm_arch_get_supported_cpuid: repl


From: Eduardo Habkost
Subject: [Qemu-devel] [PATCH 07/15] i386: kvm: kvm_arch_get_supported_cpuid: replace if+switch with single 'if'
Date: Thu, 4 Oct 2012 17:48:59 -0300

Additional fixups will be added, and making them a single 'if/else if'
chain makes it clearer than two nested switch statements.

Signed-off-by: Eduardo Habkost <address@hidden>
---
 target-i386/kvm.c | 23 +++++++++--------------
 1 file changed, 9 insertions(+), 14 deletions(-)

diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 7115921..084b40c 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -193,20 +193,15 @@ uint32_t kvm_arch_get_supported_cpuid(KVMState *s, 
uint32_t function,
 
     /* Fixups for the data returned by KVM, below */
 
-    if (reg == R_EDX) {
-        switch (function) {
-        case 1:
-            /* KVM before 2.6.30 misreports the following features */
-            ret |= CPUID_MTRR | CPUID_PAT | CPUID_MCE | CPUID_MCA;
-            break;
-        case 0x80000001:
-            /* On Intel, kvm returns cpuid according to the Intel spec,
-             * so add missing bits according to the AMD spec:
-             */
-            cpuid_1_edx = kvm_arch_get_supported_cpuid(s, 1, 0, R_EDX);
-            ret |= cpuid_1_edx & CPUID_EXT2_AMD_ALIASES;
-            break;
-        }
+    if (function == 1 && reg == R_EDX) {
+        /* KVM before 2.6.30 misreports the following features */
+        ret |= CPUID_MTRR | CPUID_PAT | CPUID_MCE | CPUID_MCA;
+    } else if (function == 0x80000001 && reg == R_EDX) {
+        /* On Intel, kvm returns cpuid according to the Intel spec,
+         * so add missing bits according to the AMD spec:
+         */
+        cpuid_1_edx = kvm_arch_get_supported_cpuid(s, 1, 0, R_EDX);
+        ret |= cpuid_1_edx & CPUID_EXT2_AMD_ALIASES;
     }
 
     g_free(cpuid);
-- 
1.7.11.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]