]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
cpu_map: sync_qemu_cpu_i386: Translate features in model versions
authorTim Wiederhake <twiederh@redhat.com>
Mon, 23 Nov 2020 14:14:26 +0000 (15:14 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Mon, 7 Dec 2020 14:09:57 +0000 (15:09 +0100)
If a feature is added (or removed) in a QEMU CPU model version, we
get to see the QEMU pretty name for the feature, not the name of
the macro.

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
src/cpu_map/sync_qemu_i386.py

index 53b27773e4dad04b0111eec281da3ee7f48fcd87..93630f1a552059bb2a000c334e2a971cce9df0b7 100755 (executable)
@@ -164,6 +164,10 @@ def translate_feature(name):
     if name in T:
         return T[name]
 
+    for v in T.values():
+        if name.replace("-", "_") == v.replace("-", "_"):
+            return v
+
     print("warning: Unknown feature '{}'".format(name))
     return name
 
@@ -308,6 +312,11 @@ def expand_model(model):
 
         props = version.pop(".props", dict())
         for k, v in props:
+            if k not in ("model-id", "stepping", "model"):
+                k = translate_feature(k)
+            if k is None:
+                continue
+
             if v == "on":
                 result["features"].add(k)
             elif v == "off" and k in result["features"]: