[libvirt] [PATCH 36/41] tests: Add CPU detection test for Intel Xeon E3-1245

Jiri Denemark jdenemar at redhat.com
Wed Jun 8 08:22:50 UTC 2016


Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 tests/cputest.c                                    |  1 +
 tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml | 30 ++++++++
 tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml  | 30 ++++++++
 tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml  | 15 ++++
 tests/cputestdata/x86-cpuid-Xeon-E3-1245.json      | 88 ++++++++++++++++++++++
 tests/cputestdata/x86-cpuid-Xeon-E3-1245.xml       | 46 +++++++++++
 6 files changed, 210 insertions(+)
 create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245.json
 create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245.xml

diff --git a/tests/cputest.c b/tests/cputest.c
index c13ed4b..c86a979 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -864,6 +864,7 @@ mymain(void)
     DO_TEST_CPUID("x86", "Pentium-P6100", false);
     DO_TEST_CPUID("x86", "Phenom-B95", true);
     DO_TEST_CPUID("x86", "Xeon-5110", false);
+    DO_TEST_CPUID("x86", "Xeon-E3-1245", true);
 
 #if WITH_QEMU && WITH_YAJL
     qemuTestDriverFree(&driver);
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml
new file mode 100644
index 0000000..0001b2d
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml
@@ -0,0 +1,30 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Broadwell</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ds'/>
+  <feature policy='require' name='acpi'/>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='ht'/>
+  <feature policy='require' name='tm'/>
+  <feature policy='require' name='pbe'/>
+  <feature policy='require' name='dtes64'/>
+  <feature policy='require' name='monitor'/>
+  <feature policy='require' name='ds_cpl'/>
+  <feature policy='require' name='vmx'/>
+  <feature policy='require' name='smx'/>
+  <feature policy='require' name='est'/>
+  <feature policy='require' name='tm2'/>
+  <feature policy='require' name='xtpr'/>
+  <feature policy='require' name='pdcm'/>
+  <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='mpx'/>
+  <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml
new file mode 100644
index 0000000..0c2aaee
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml
@@ -0,0 +1,30 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Broadwell</model>
+  <vendor>Intel</vendor>
+  <feature name='vme'/>
+  <feature name='ds'/>
+  <feature name='acpi'/>
+  <feature name='ss'/>
+  <feature name='ht'/>
+  <feature name='tm'/>
+  <feature name='pbe'/>
+  <feature name='dtes64'/>
+  <feature name='monitor'/>
+  <feature name='ds_cpl'/>
+  <feature name='vmx'/>
+  <feature name='smx'/>
+  <feature name='est'/>
+  <feature name='tm2'/>
+  <feature name='xtpr'/>
+  <feature name='pdcm'/>
+  <feature name='osxsave'/>
+  <feature name='f16c'/>
+  <feature name='rdrand'/>
+  <feature name='pdpe1gb'/>
+  <feature name='abm'/>
+  <feature name='tsc_adjust'/>
+  <feature name='mpx'/>
+  <feature name='clflushopt'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml
new file mode 100644
index 0000000..81a41fb
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml
@@ -0,0 +1,15 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Broadwell</model>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='vmx'/>
+  <feature policy='require' name='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='mpx'/>
+  <feature policy='require' name='clflushopt'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E3-1245.json b/tests/cputestdata/x86-cpuid-Xeon-E3-1245.json
new file mode 100644
index 0000000..10fbe06
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E3-1245.json
@@ -0,0 +1,88 @@
+{
+  "return": [
+    {
+      "cpuid-register": "EAX",
+      "cpuid-input-eax": 6,
+      "features": 4
+    },
+    {
+      "cpuid-register": "EAX",
+      "cpuid-input-ecx": 1,
+      "cpuid-input-eax": 13,
+      "features": 7
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483658,
+      "features": 0
+    },
+    {
+      "cpuid-register": "EAX",
+      "cpuid-input-eax": 1073741825,
+      "features": 16777467
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 3221225473,
+      "features": 0
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483655,
+      "features": 0
+    },
+    {
+      "cpuid-register": "ECX",
+      "cpuid-input-eax": 2147483649,
+      "features": 289
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483649,
+      "features": 739248128
+    },
+    {
+      "cpuid-register": "ECX",
+      "cpuid-input-ecx": 0,
+      "cpuid-input-eax": 7,
+      "features": 0
+    },
+    {
+      "cpuid-register": "EBX",
+      "cpuid-input-ecx": 0,
+      "cpuid-input-eax": 7,
+      "features": 10244027
+    },
+    {
+      "cpuid-register": "ECX",
+      "cpuid-input-eax": 1,
+      "features": 4160369187
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 1,
+      "features": 260832255
+    }
+  ],
+  "id": "feature-words"
+}
+
+{
+  "return": 6,
+  "id": "family"
+}
+
+{
+  "return": 94,
+  "id": "model"
+}
+
+{
+  "return": 3,
+  "id": "stepping"
+}
+
+{
+  "return": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz",
+  "id": "model-id"
+}
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E3-1245.xml b/tests/cputestdata/x86-cpuid-Xeon-E3-1245.xml
new file mode 100644
index 0000000..42992db
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E3-1245.xml
@@ -0,0 +1,46 @@
+<!-- Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000016' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000506e3' ebx='0x00100800' ecx='0x7ffafbff' edx='0xbfebfbff'/>
+  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c30000'/>
+  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x1c004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x1c004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x1c004143' ebx='0x00c0003f' ecx='0x000003ff' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x1c03c163' ebx='0x03c0003f' ecx='0x00001fff' edx='0x00000006'/>
+  <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00142120'/>
+  <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x000027f7' ebx='0x00000002' ecx='0x00000009' edx='0x00000000'/>
+  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x029c6fbf' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x07300404' ebx='0x00000000' ecx='0x00000000' edx='0x00000603'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004' ebx='0x00000008' ecx='0x00000201' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x0000001f' ebx='0x00000440' ecx='0x00000440' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x000003c0' ecx='0x00000100' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x03' eax='0x00000040' ebx='0x000003c0' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x04' eax='0x00000040' ebx='0x00000400' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000e' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000f' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000011' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000012' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000013' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000014' ecx_in='0x00' eax='0x00000001' ebx='0x0000000f' ecx='0x00000007' edx='0x00000000'/>
+  <cpuid eax_in='0x00000014' ecx_in='0x01' eax='0x02490002' ebx='0x003f3fff' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000015' ecx_in='0x00' eax='0x00000002' ebx='0x00000124' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000016' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
+  <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x80000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
+  <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x65746e49' ebx='0x2952286c' ecx='0x6f655820' edx='0x2952286e'/>
+  <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x55504320' ebx='0x2d334520' ecx='0x35343231' edx='0x20357620'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e332040' ebx='0x48473035' ecx='0x0000007a' edx='0x00000000'/>
+  <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01006040' edx='0x00000000'/>
+  <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+  <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003027' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
+</cpudata>
-- 
2.8.3




More information about the libvir-list mailing list