c480ed
From 920ac610bc68ffd7de1ac14c401c7f8c37f3337e Mon Sep 17 00:00:00 2001
c480ed
Message-Id: <920ac610bc68ffd7de1ac14c401c7f8c37f3337e@dist-git>
c480ed
From: Jiri Denemark <jdenemar@redhat.com>
c480ed
Date: Fri, 21 Jun 2019 09:25:36 +0200
c480ed
Subject: [PATCH] cpu_x86: Make x86cpuidMatchMasked more general
c480ed
MIME-Version: 1.0
c480ed
Content-Type: text/plain; charset=UTF-8
c480ed
Content-Transfer-Encoding: 8bit
c480ed
c480ed
The function is renamed as virCPUx86DataItemMatchMasked to reflect the
c480ed
change in parameter types.
c480ed
c480ed
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
c480ed
Reviewed-by: Ján Tomko <jtomko@redhat.com>
c480ed
(cherry picked from commit 2eea67a98eab58b46dbf4275819c06c90bc4c5b6)
c480ed
c480ed
https://bugzilla.redhat.com/show_bug.cgi?id=1697627
c480ed
c480ed
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
c480ed
Message-Id: <7c0a54c618d67d64663eb92d5eeb1d8a2270be16.1561068591.git.jdenemar@redhat.com>
c480ed
Reviewed-by: Ján Tomko <jtomko@redhat.com>
c480ed
---
c480ed
 src/cpu/cpu_x86.c | 20 ++++++++++----------
c480ed
 1 file changed, 10 insertions(+), 10 deletions(-)
c480ed
c480ed
diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c
c480ed
index 54da9a985c..1bb35ec4e8 100644
c480ed
--- a/src/cpu/cpu_x86.c
c480ed
+++ b/src/cpu/cpu_x86.c
c480ed
@@ -203,13 +203,13 @@ x86cpuidMatch(const virCPUx86CPUID *cpuid1,
c480ed
 
c480ed
 
c480ed
 static bool
c480ed
-x86cpuidMatchMasked(const virCPUx86CPUID *cpuid,
c480ed
-                    const virCPUx86CPUID *mask)
c480ed
+virCPUx86DataItemMatchMasked(const virCPUx86DataItem *item,
c480ed
+                             const virCPUx86DataItem *mask)
c480ed
 {
c480ed
-    return ((cpuid->eax & mask->eax) == mask->eax &&
c480ed
-            (cpuid->ebx & mask->ebx) == mask->ebx &&
c480ed
-            (cpuid->ecx & mask->ecx) == mask->ecx &&
c480ed
-            (cpuid->edx & mask->edx) == mask->edx);
c480ed
+    return ((item->cpuid.eax & mask->cpuid.eax) == mask->cpuid.eax &&
c480ed
+            (item->cpuid.ebx & mask->cpuid.ebx) == mask->cpuid.ebx &&
c480ed
+            (item->cpuid.ecx & mask->cpuid.ecx) == mask->cpuid.ecx &&
c480ed
+            (item->cpuid.edx & mask->cpuid.edx) == mask->cpuid.edx);
c480ed
 }
c480ed
 
c480ed
 
c480ed
@@ -474,7 +474,7 @@ x86DataIsSubset(const virCPUx86Data *data,
c480ed
 
c480ed
     while ((itemSubset = virCPUx86DataNext(&iter))) {
c480ed
         if (!(item = virCPUx86DataGet(data, itemSubset)) ||
c480ed
-            !x86cpuidMatchMasked(&item->cpuid, &itemSubset->cpuid))
c480ed
+            !virCPUx86DataItemMatchMasked(item, itemSubset))
c480ed
             return false;
c480ed
     }
c480ed
 
c480ed
@@ -515,7 +515,7 @@ x86DataToVendor(const virCPUx86Data *data,
c480ed
     for (i = 0; i < map->nvendors; i++) {
c480ed
         virCPUx86VendorPtr vendor = map->vendors[i];
c480ed
         if ((item = virCPUx86DataGet(data, &vendor->data)) &&
c480ed
-            x86cpuidMatchMasked(&item->cpuid, &vendor->data.cpuid)) {
c480ed
+            virCPUx86DataItemMatchMasked(item, &vendor->data)) {
c480ed
             virCPUx86DataItemClearBits(item, &vendor->data);
c480ed
             return vendor;
c480ed
         }
c480ed
@@ -1157,7 +1157,7 @@ x86ModelCompare(virCPUx86ModelPtr model1,
c480ed
         if ((item2 = virCPUx86DataGet(&model2->data, item1))) {
c480ed
             if (x86cpuidMatch(&item1->cpuid, &item2->cpuid))
c480ed
                 continue;
c480ed
-            else if (!x86cpuidMatchMasked(&item1->cpuid, &item2->cpuid))
c480ed
+            else if (!virCPUx86DataItemMatchMasked(item1, item2))
c480ed
                 match = SUBSET;
c480ed
         }
c480ed
 
c480ed
@@ -1173,7 +1173,7 @@ x86ModelCompare(virCPUx86ModelPtr model1,
c480ed
         if ((item1 = virCPUx86DataGet(&model1->data, item2))) {
c480ed
             if (x86cpuidMatch(&item2->cpuid, &item1->cpuid))
c480ed
                 continue;
c480ed
-            else if (!x86cpuidMatchMasked(&item2->cpuid, &item1->cpuid))
c480ed
+            else if (!virCPUx86DataItemMatchMasked(item2, item1))
c480ed
                 match = SUPERSET;
c480ed
         }
c480ed
 
c480ed
-- 
c480ed
2.22.0
c480ed