[libvirt] [PATCH 34/41] tests: Add CPU detection test for AMD Phenom II X4 B95

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


Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 tests/cputest.c                                  |  1 +
 tests/cputestdata/x86-cpuid-Phenom-B95-guest.xml | 22 +++++++
 tests/cputestdata/x86-cpuid-Phenom-B95-host.xml  | 31 ++++++++++
 tests/cputestdata/x86-cpuid-Phenom-B95-json.xml  | 20 ++++++
 tests/cputestdata/x86-cpuid-Phenom-B95.json      | 77 ++++++++++++++++++++++++
 tests/cputestdata/x86-cpuid-Phenom-B95.xml       | 38 ++++++++++++
 6 files changed, 189 insertions(+)
 create mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95-guest.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95-host.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95-json.xml
 create mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95.json
 create mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95.xml

diff --git a/tests/cputest.c b/tests/cputest.c
index 046a76c..c67b3df 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -862,6 +862,7 @@ mymain(void)
     DO_TEST_CPUID("x86", "Opteron-6234", true);
     DO_TEST_CPUID("x86", "Opteron-6282", false);
     DO_TEST_CPUID("x86", "Pentium-P6100", false);
+    DO_TEST_CPUID("x86", "Phenom-B95", true);
 
 #if WITH_QEMU && WITH_YAJL
     qemuTestDriverFree(&driver);
diff --git a/tests/cputestdata/x86-cpuid-Phenom-B95-guest.xml b/tests/cputestdata/x86-cpuid-Phenom-B95-guest.xml
new file mode 100644
index 0000000..60ba9c1
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Phenom-B95-guest.xml
@@ -0,0 +1,22 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Opteron_G3</model>
+  <vendor>AMD</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ht'/>
+  <feature policy='require' name='mmxext'/>
+  <feature policy='require' name='fxsr_opt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='3dnowext'/>
+  <feature policy='require' name='3dnow'/>
+  <feature policy='require' name='cmp_legacy'/>
+  <feature policy='require' name='extapic'/>
+  <feature policy='require' name='cr8legacy'/>
+  <feature policy='require' name='3dnowprefetch'/>
+  <feature policy='require' name='osvw'/>
+  <feature policy='require' name='ibs'/>
+  <feature policy='require' name='skinit'/>
+  <feature policy='require' name='wdt'/>
+  <feature policy='require' name='invtsc'/>
+  <feature policy='disable' name='nx'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Phenom-B95-host.xml b/tests/cputestdata/x86-cpuid-Phenom-B95-host.xml
new file mode 100644
index 0000000..127b047
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Phenom-B95-host.xml
@@ -0,0 +1,31 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>athlon</model>
+  <vendor>AMD</vendor>
+  <feature name='mca'/>
+  <feature name='clflush'/>
+  <feature name='ht'/>
+  <feature name='pni'/>
+  <feature name='monitor'/>
+  <feature name='cx16'/>
+  <feature name='popcnt'/>
+  <feature name='syscall'/>
+  <feature name='fxsr_opt'/>
+  <feature name='pdpe1gb'/>
+  <feature name='rdtscp'/>
+  <feature name='lm'/>
+  <feature name='lahf_lm'/>
+  <feature name='cmp_legacy'/>
+  <feature name='svm'/>
+  <feature name='extapic'/>
+  <feature name='cr8legacy'/>
+  <feature name='abm'/>
+  <feature name='sse4a'/>
+  <feature name='misalignsse'/>
+  <feature name='3dnowprefetch'/>
+  <feature name='osvw'/>
+  <feature name='ibs'/>
+  <feature name='skinit'/>
+  <feature name='wdt'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Phenom-B95-json.xml b/tests/cputestdata/x86-cpuid-Phenom-B95-json.xml
new file mode 100644
index 0000000..c1070de
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Phenom-B95-json.xml
@@ -0,0 +1,20 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Opteron_G3</model>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='x2apic'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='mmxext'/>
+  <feature policy='require' name='fxsr_opt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='3dnowext'/>
+  <feature policy='require' name='3dnow'/>
+  <feature policy='require' name='cmp_legacy'/>
+  <feature policy='require' name='cr8legacy'/>
+  <feature policy='require' name='3dnowprefetch'/>
+  <feature policy='require' name='osvw'/>
+  <feature policy='disable' name='monitor'/>
+  <feature policy='disable' name='nx'/>
+  <feature policy='disable' name='rdtscp'/>
+  <feature policy='disable' name='svm'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Phenom-B95.json b/tests/cputestdata/x86-cpuid-Phenom-B95.json
new file mode 100644
index 0000000..5f5badd
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Phenom-B95.json
@@ -0,0 +1,77 @@
+{
+  "return": [
+    {
+      "cpuid-register": "EAX",
+      "cpuid-input-ecx": 1,
+      "cpuid-input-eax": 13,
+      "features": 0
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483658,
+      "features": 9
+    },
+    {
+      "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": 1011
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483649,
+      "features": 3862956032
+    },
+    {
+      "cpuid-register": "EBX",
+      "cpuid-input-ecx": 0,
+      "cpuid-input-eax": 7,
+      "features": 0
+    },
+    {
+      "cpuid-register": "ECX",
+      "cpuid-input-eax": 1,
+      "features": 2157977601
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 1,
+      "features": 126614527
+    }
+  ],
+  "id": "feature-words"
+}
+
+{
+  "return": 16,
+  "id": "family"
+}
+
+{
+  "return": 4,
+  "id": "model"
+}
+
+{
+  "return": 2,
+  "id": "stepping"
+}
+
+{
+  "return": "AMD Phenom(tm) II X4 B95 Processor",
+  "id": "model-id"
+}
diff --git a/tests/cputestdata/x86-cpuid-Phenom-B95.xml b/tests/cputestdata/x86-cpuid-Phenom-B95.xml
new file mode 100644
index 0000000..ad989f9
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Phenom-B95.xml
@@ -0,0 +1,38 @@
+<!-- AMD Phenom(tm) II X4 B95 Processor -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000005' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00100f42' ebx='0x00040800' ecx='0x00802009' edx='0x178bfbff'/>
+  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00000000'/>
+  <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x8000001b' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00100f42' ebx='0x10003df6' ecx='0x000037ff' edx='0xefc3fbff'/>
+  <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x6e656850' ecx='0x74286d6f' edx='0x4920296d'/>
+  <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x34582049' ebx='0x35394220' ecx='0x6f725020' edx='0x73736563'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x0000726f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff30ff10' ebx='0xff30ff20' ecx='0x40020140' edx='0x40020140'/>
+  <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x20800000' ebx='0x42004200' ecx='0x02008140' edx='0x0030b140'/>
+  <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000001f9'/>
+  <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030' ebx='0x00000000' ecx='0x00002003' edx='0x00000000'/>
+  <cpuid eax_in='0x80000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000001' ebx='0x00000040' ecx='0x00000000' edx='0x0000000f'/>
+  <cpuid eax_in='0x8000000b' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000000d' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000000e' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000000f' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000011' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000012' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000013' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000014' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000015' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000016' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000017' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000018' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000019' ecx_in='0x00' eax='0xf0300000' ebx='0x60100000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000001a' ecx_in='0x00' eax='0x00000003' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000001b' ecx_in='0x00' eax='0x0000001f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+</cpudata>
-- 
2.8.3




More information about the libvir-list mailing list