]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
conf: cpu: Add <signature family=X model=X stepping=X/>
authorCole Robinson <crobinso@redhat.com>
Sat, 11 Jun 2022 16:24:37 +0000 (12:24 -0400)
committerCole Robinson <crobinso@redhat.com>
Thu, 16 Jun 2022 16:12:45 +0000 (12:12 -0400)
Internally we already collect x86 host family + model + stepping
numeric values. This exposed them in capabilities CPU output.
Example:

$ sudo virsh capabilities | grep -A1 -B1 signature
      <microcode version='240'/>
      <signature family='6' model='94' stepping='3'/>
      <counter name='tsc' frequency='3408010000' scaling='no'/>

Users need to know these values to calculate an expected.
SEV-ES/SEV-SNP launch measurement.

Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
65 files changed:
src/conf/cpu_conf.c
src/conf/cpu_conf.h
src/conf/schemas/cputypes.rng
src/cpu/cpu_x86.c
tests/cputestdata/x86_64-cpuid-A10-5800K-host.xml
tests/cputestdata/x86_64-cpuid-Atom-D510-host.xml
tests/cputestdata/x86_64-cpuid-Atom-N450-host.xml
tests/cputestdata/x86_64-cpuid-Atom-P5362-host.xml
tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-2500-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-2540M-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-4670T-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-650-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-6600-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-2600-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-2600-xsaveopt-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-3520M-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-3740QM-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-3770-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-4510U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-4600U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-5600U-arat-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-5600U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-5600U-ibrs-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7600U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7700-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8700-host.xml
tests/cputestdata/x86_64-cpuid-Core2-E6850-host.xml
tests/cputestdata/x86_64-cpuid-Core2-Q9500-host.xml
tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml
tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
tests/cputestdata/x86_64-cpuid-FX-8150-host.xml
tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-host.xml
tests/cputestdata/x86_64-cpuid-Opteron-1352-host.xml
tests/cputestdata/x86_64-cpuid-Opteron-2350-host.xml
tests/cputestdata/x86_64-cpuid-Opteron-6234-host.xml
tests/cputestdata/x86_64-cpuid-Opteron-6282-host.xml
tests/cputestdata/x86_64-cpuid-Pentium-P6100-host.xml
tests/cputestdata/x86_64-cpuid-Phenom-B95-host.xml
tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml
tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-5110-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1225-v5-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2609-v3-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E7-4820-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E7-4830-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E7540-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6130-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-8268-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-W3520-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-X5460-host.xml

index 5ec703b903f8a770d166fd9cf791e968e1cce075..8d80bbd842f42fdec3313dc4dd5e33aab921f126 100644 (file)
@@ -243,6 +243,9 @@ virCPUDefCopyWithoutModel(const virCPUDef *cpu)
     copy->threads = cpu->threads;
     copy->arch = cpu->arch;
     copy->migratable = cpu->migratable;
+    copy->sigFamily = cpu->sigFamily;
+    copy->sigModel = cpu->sigModel;
+    copy->sigStepping = cpu->sigStepping;
 
     if (cpu->cache) {
         copy->cache = g_new0(virCPUCacheDef, 1);
@@ -419,6 +422,7 @@ virCPUDefParseXML(xmlXPathContextPtr ctxt,
     if (def->type == VIR_CPU_TYPE_HOST) {
         g_autofree char *arch = virXPathString("string(./arch[1])", ctxt);
         xmlNodePtr counter_node = NULL;
+        xmlNodePtr signature_node = NULL;
 
         if (!arch) {
             virReportError(VIR_ERR_XML_ERROR, "%s",
@@ -439,6 +443,26 @@ virCPUDefParseXML(xmlXPathContextPtr ctxt,
             return -1;
         }
 
+        if ((signature_node = virXPathNode("./signature[1]", ctxt))) {
+            if (virXMLPropUInt(signature_node, "family", 10,
+                               VIR_XML_PROP_REQUIRED | VIR_XML_PROP_NONZERO,
+                               &def->sigFamily) < 0) {
+                return -1;
+            }
+
+            if (virXMLPropUInt(signature_node, "model", 10,
+                               VIR_XML_PROP_REQUIRED,
+                               &def->sigModel) < 0) {
+                return -1;
+            }
+
+            if (virXMLPropUInt(signature_node, "stepping", 10,
+                               VIR_XML_PROP_REQUIRED,
+                               &def->sigStepping) < 0) {
+                return -1;
+            }
+        }
+
         if ((counter_node = virXPathNode("./counter[@name='tsc']", ctxt))) {
             tsc = g_new0(virHostCPUTscInfo, 1);
 
@@ -751,6 +775,14 @@ virCPUDefFormatBuf(virBuffer *buf,
         virBufferAsprintf(buf, "<microcode version='%u'/>\n",
                           def->microcodeVersion);
 
+    if (def->type == VIR_CPU_TYPE_HOST && def->sigFamily) {
+        virBufferAddLit(buf, "<signature");
+        virBufferAsprintf(buf, " family='%u'", def->sigFamily);
+        virBufferAsprintf(buf, " model='%u'", def->sigModel);
+        virBufferAsprintf(buf, " stepping='%u'", def->sigStepping);
+        virBufferAddLit(buf, "/>\n");
+    }
+
     if (def->type == VIR_CPU_TYPE_HOST && def->tsc) {
         virBufferAddLit(buf, "<counter name='tsc'");
         virBufferAsprintf(buf, " frequency='%llu'", def->tsc->frequency);
index 05523e102401c83dad61be0f922422d1ae84e8ce..5d2980edbd562fe4864e9fc2cdf0b0116cca9786 100644 (file)
@@ -133,6 +133,9 @@ struct _virCPUDef {
     unsigned int dies;
     unsigned int cores;
     unsigned int threads;
+    unsigned int sigFamily;
+    unsigned int sigModel;
+    unsigned int sigStepping;
     size_t nfeatures;
     size_t nfeatures_max;
     virCPUFeatureDef *features;
index 056e66e1b4ca6e7e2de462abd28bda6c1e080dba..122880fb2ed0522133e999ad7f4b56629e7cccc0 100644 (file)
             </attribute>
           </element>
         </optional>
+        <optional>
+          <element name="signature">
+            <attribute name="family">
+              <ref name="positiveInteger"/>
+            </attribute>
+            <attribute name="model">
+              <ref name="unsignedInt"/>
+            </attribute>
+            <attribute name="stepping">
+              <ref name="unsignedInt"/>
+            </attribute>
+          </element>
+        </optional>
         <optional>
           <element name="counter">
             <attribute name="name">
index 695d095baaac62b9f7e01dfe5afae7b1836188e0..4bb2ea4baeaf83fc5be09110fb27073f6257d700 100644 (file)
@@ -2264,6 +2264,9 @@ x86Decode(virCPUDef *cpu,
     cpuModel->nfeatures = 0;
     cpu->nfeatures_max = cpuModel->nfeatures_max;
     cpuModel->nfeatures_max = 0;
+    cpu->sigFamily = sigFamily;
+    cpu->sigModel = sigModel;
+    cpu->sigStepping = sigStepping;
 
     return 0;
 }
index 2430adbfbc949186d2c2c2e19eb37a42bed7f16e..220dfb64675494c70f78d479b3b22ffac910ecff 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G5</model>
   <vendor>AMD</vendor>
+  <signature family='21' model='16' stepping='1'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index 8cf4341099ff96d3ca9fbe33445e34507b118068..3c8a005122373d18d0e863320566518df445d7c0 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>n270</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='28' stepping='10'/>
   <feature name='pse36'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index c79713dcaaa980446c4eb6cf620b2885a47667c7..1f4eb7b7273b896aeedd874c92c0b544d2cd5fdf 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>n270</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='28' stepping='10'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index b3e9d5c1ff33b4aeff617f87a7ab0ede747f8f5f..c59ebfa7992e2324ace60fc26a5512db573fc264 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Westmere-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='134' stepping='5'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index b0777181bb8ccb798bf1ef27f3a1bc56d807396d..6ac4ad55ef98acfade7c3f735a63a25ab6ea94b4 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Cooperlake</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='11'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index a604acb911887e02f57e23134c41b2806d7deec9..cf8b175db11c5588578f4fc4c104bdcc60ba78b5 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>SandyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='42' stepping='7'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index a604acb911887e02f57e23134c41b2806d7deec9..cf8b175db11c5588578f4fc4c104bdcc60ba78b5 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>SandyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='42' stepping='7'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index d1d0bc7168350f1a3783248f2dac8fcd3dd03604..827b16cb694d63ab90388f2a056e7d9257eeb74b 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell-noTSX</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='60' stepping='3'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index e7256d52d0530a73146b7931d1ecd190e491d973..4234c4df5a7a3950cf533c2ae749fc8c00856e46 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Westmere</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='37' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index faaa07f19b948eeafe83434187bb0d669d19025f..c52e8db2350b583f6e01047de5481d017312f3c8 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='94' stepping='3'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index a604acb911887e02f57e23134c41b2806d7deec9..cf8b175db11c5588578f4fc4c104bdcc60ba78b5 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>SandyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='42' stepping='7'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index e139004923543dbf5252ec8dbbede09d9be07218..adcc4b86c55268c2f9e6b7763584411a0a2e5981 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>SandyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='42' stepping='7'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index a23c651a088db3a754d9730c4cd06c9bfceea3ba..94352ee8bf9c9c43b2cef207549addddb2be3d69 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>IvyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='58' stepping='9'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 9fec131ac97e5be02beea6ae29fb767c795a980a..e2503cd35c1aa2f5a98ea32e4fe6adf7a136ac9a 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>IvyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='58' stepping='9'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index a23c651a088db3a754d9730c4cd06c9bfceea3ba..94352ee8bf9c9c43b2cef207549addddb2be3d69 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>IvyBridge</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='58' stepping='9'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 61bcefbfcb25fe58e73a89fd8e87ec3216943057..a6307e834e7d8b65332ddc3bd55caeddf0b0ee46 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Westmere</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='69' stepping='1'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index fae8e8d0a8d3d3d419d33348d737e1848bcc87e1..8bbac47a2e379f8da316e7e29ff9c181291b7cb9 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell-noTSX</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='69' stepping='1'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index ea622c87c71c210d6b7a96ebc190084975b8a0e8..b39148f37f9835746620f231a95e7bbeca2fc74b 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='61' stepping='4'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index ea622c87c71c210d6b7a96ebc190084975b8a0e8..b39148f37f9835746620f231a95e7bbeca2fc74b 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='61' stepping='4'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index a534d2dec55ce02e6370d51eb2c349b2f5c305a5..2ab8890464073bfd2b07e1b16d4644a2b0c90ca8 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='61' stepping='4'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index bbdfb6aa613d956e81c66d7ecb759a0bb17e342d..edfb8ec421df70a72b4d24f981db8dbff7524919 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='142' stepping='9'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index faaa07f19b948eeafe83434187bb0d669d19025f..08255621ec064f78e7b8352e3b901569763f6d4e 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='158' stepping='9'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 7681c94649773f54ffce35e0d2c3a3d26913b8ef..1e3f1d1719cd428557b2ba727bafac66c852371b 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client-noTSX-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='142' stepping='10'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index bbdfb6aa613d956e81c66d7ecb759a0bb17e342d..4174d79ce72ac90df517aa0242dcb106f84a20e1 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='158' stepping='10'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index e7ddc39cebb0409df0f0519570976646b326c3e8..e0ec4cd7953277611c59d0abc6061a4051e6029c 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Conroe</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='15' stepping='11'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 4dc25588d514096f90d4424fa51f0df29cd90387..586b8e0f591cfc83332f929b4dcb54da5a23fedf 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Penryn</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='23' stepping='10'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 9f8108cdaaf09eec127025807cb0e21b3a82945c..debddc194f1d47a0f4a668b58f7e1ed2089fb6d5 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>EPYC-Rome</model>
   <vendor>AMD</vendor>
+  <signature family='23' model='49' stepping='0'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index 8c2c975fdd6b7d7f0d3e4711d3935fb5c95491eb..da05dd4709e4cba900a4ae6729b7597a2d382a3a 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>EPYC</model>
   <vendor>AMD</vendor>
+  <signature family='23' model='1' stepping='2'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index c3bbf78396be7929b55dbe5d7960d3592656c66e..e91c14c7156fadcd0066e9b54bfe515cfda76838 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>EPYC-IBPB</model>
   <vendor>AMD</vendor>
+  <signature family='23' model='1' stepping='2'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index 75595c02af7798d924ff43b4c520fbb81cfa8c0f..4fb2d3978bb5381371912382ec2390cbbfe59373 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G4</model>
   <vendor>AMD</vendor>
+  <signature family='21' model='1' stepping='2'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index 76c3753505f0dd387a08d4111d271813dcc67238..d06a7afc3f6111e76e7bf6365d3008dd6793b1b0 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Dhyana</model>
   <vendor>Hygon</vendor>
+  <signature family='24' model='0' stepping='1'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index 07e8f8bc24dc528f2483d7816b3c678c9547c997..2ce74da60484196f571cc253993defdf689d977c 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Icelake-Server</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='106' stepping='0'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index ecd532167a3904b00e6abbeafeca6f0b1a90c2f4..7b0b3dfe6abf688a751a01c84aa22df2347aab4f 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G3</model>
   <vendor>AMD</vendor>
+  <signature family='16' model='2' stepping='3'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index ecd532167a3904b00e6abbeafeca6f0b1a90c2f4..7b0b3dfe6abf688a751a01c84aa22df2347aab4f 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G3</model>
   <vendor>AMD</vendor>
+  <signature family='16' model='2' stepping='3'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index 75595c02af7798d924ff43b4c520fbb81cfa8c0f..4fb2d3978bb5381371912382ec2390cbbfe59373 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G4</model>
   <vendor>AMD</vendor>
+  <signature family='21' model='1' stepping='2'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index 75595c02af7798d924ff43b4c520fbb81cfa8c0f..4fb2d3978bb5381371912382ec2390cbbfe59373 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Opteron_G4</model>
   <vendor>AMD</vendor>
+  <signature family='21' model='1' stepping='2'/>
   <feature name='vme'/>
   <feature name='ht'/>
   <feature name='monitor'/>
index 3975aa7e1f9aeb422288e13500c00b50a8cde6d7..a70f8ccd462bc7a87e1a70b62452285ea36fe6ab 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>core2duo</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='37' stepping='5'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 95875918c9a461753945b1b6de34d3c7b40a1670..dba7b2b1611ceae63ede603180f41833010b79b3 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>athlon</model>
   <vendor>AMD</vendor>
+  <signature family='16' model='4' stepping='2'/>
   <feature name='mca'/>
   <feature name='clflush'/>
   <feature name='ht'/>
index 8c2c975fdd6b7d7f0d3e4711d3935fb5c95491eb..15ec20bd635427563bfe3a808a64f8dc37e01582 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>EPYC</model>
   <vendor>AMD</vendor>
+  <signature family='23' model='1' stepping='1'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index 65eaeabdd019ccc17c3f2a328ea664af4aa1253c..7f86683bf29a77ed2d37e48f8e16cf1ac5ea722b 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>EPYC-Rome</model>
   <vendor>AMD</vendor>
+  <signature family='23' model='113' stepping='0'/>
   <feature name='ht'/>
   <feature name='monitor'/>
   <feature name='osxsave'/>
index ca3a84cc5ca94cb2dbeb2c53b6988726e04e3324..beb465df86f3dacb4d9ee97111727b4d5035d7b9 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Conroe</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='15' stepping='6'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index e7ced4279795606f80ec434c39ce99c6bf39c280..d4a2a15e60e83cb902262bdd8a8ef943533a1f29 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='94' stepping='3'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index faaa07f19b948eeafe83434187bb0d669d19025f..c52e8db2350b583f6e01047de5481d017312f3c8 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Client</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='94' stepping='3'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 9bac4b46487bc9c55a99532f824107fe3a11dce5..bc39536de90cfd3cea818139e2924389657c57f3 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell-noTSX-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='63' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 43a0b93ab4eacdcf4dda568483cf36cf5639f55d..70419d79444f87848a29096acbdad448c04016a3 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='79' stepping='1'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 431a737a44c703ca86ab5e4b048193e1f7b83aee..6d959eedc35c4e31546fc749cde0146abed186c6 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell-noTSX</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='63' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 5dd8d749de2a907d328f3ced1fdbd36b405dff98..e2ace9021bf0ca35c2be8229f84d41e83dc1c68d 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='79' stepping='1'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 80ca6c343f5e1c96586eb2eb863553bc0fe92f97..628900fd2c6f56a07357230e92e7c7221b516244 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>SandyBridge-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='45' stepping='7'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 431a737a44c703ca86ab5e4b048193e1f7b83aee..6d959eedc35c4e31546fc749cde0146abed186c6 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell-noTSX</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='63' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 5dd8d749de2a907d328f3ced1fdbd36b405dff98..e2ace9021bf0ca35c2be8229f84d41e83dc1c68d 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Broadwell</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='79' stepping='1'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 52902479b9f816eb653b93b07a6916acb3371911..58468cd09600485787ff9066caf9ceb2b85fbd86 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Westmere</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='47' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 52902479b9f816eb653b93b07a6916acb3371911..58468cd09600485787ff9066caf9ceb2b85fbd86 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Westmere</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='47' stepping='2'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index e90598ec636ea4f50d42795dfaed594ba3305a00..6a18204c02202a6022ec709408752a5852a2173e 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Haswell</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='63' stepping='4'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 42b43116bdc3023f1bb323506a76c0363640d2ca..ee526e7119ec4a2d6d9a04609aa4a92c24c6fbaf 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Nehalem-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='46' stepping='6'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index 9de76fd640f1e8af81fefafb25d15208a2471200..e004747ada01dc2b10503dbfc6e35588490d5a73 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Server-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='4'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 207e9e0ee4230b6bfee826df775c6d22a8954c17..fba4ccf506c93c7fe8fa2ebc4539e7698d271897 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Server-IBRS</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='4'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index b18ceddc60ac0f201be7714b881e4f64ce0e4b29..da7e96e533982113d6f787d4901ee50a2a15ab1d 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Skylake-Server</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='4'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index fdeafc487018b20991d31a9225d3e2455c313436..96effe5684ab4a082eb83d32f446727313f4a964 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Cascadelake-Server</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='6'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index 01447f34785137d3ce6090ca4d8cc616d89297fe..ea51fc40a11c0c7f146a322521cfc32b7f01a76a 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Cascadelake-Server</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='85' stepping='7'/>
   <feature name='ds'/>
   <feature name='acpi'/>
   <feature name='ss'/>
index c4a9226973b988a972398340da902e93ad10ff82..35dd63f3603dd75bcb59e588a0f522176fe22461 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Nehalem</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='26' stepping='5'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>
index e73c4780c94e7e7fa94ad431771ca753bc2d153b..91ab9726dac06c069ef3d5be51b57d037e6f37b9 100644 (file)
@@ -2,6 +2,7 @@
   <arch>x86_64</arch>
   <model>Penryn</model>
   <vendor>Intel</vendor>
+  <signature family='6' model='23' stepping='6'/>
   <feature name='vme'/>
   <feature name='ds'/>
   <feature name='acpi'/>