[PATCH 13/41] tests: Add CPU detection test for AMD A10-5800K

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Jiri Denemark <jdenemar@xxxxxxxxxx>
---
 tests/cputest.c                                 |  2 +
 tests/cputestdata/x86-cpuid-A10-5800K-guest.xml | 26 +++++++++
 tests/cputestdata/x86-cpuid-A10-5800K-host.xml  | 26 +++++++++
 tests/cputestdata/x86-cpuid-A10-5800K-json.xml  | 16 +++++
 tests/cputestdata/x86-cpuid-A10-5800K.json      | 77 +++++++++++++++++++++++++
 tests/cputestdata/x86-cpuid-A10-5800K.xml       | 50 ++++++++++++++++
 6 files changed, 197 insertions(+)
 create mode 100644 tests/cputestdata/x86-cpuid-A10-5800K-guest.xml
 create mode 100644 tests/cputestdata/x86-cpuid-A10-5800K-host.xml
 create mode 100644 tests/cputestdata/x86-cpuid-A10-5800K-json.xml
 create mode 100644 tests/cputestdata/x86-cpuid-A10-5800K.json
 create mode 100644 tests/cputestdata/x86-cpuid-A10-5800K.xml

diff --git a/tests/cputest.c b/tests/cputest.c
index 2b243bb..16be652 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -841,6 +841,8 @@ mymain(void)
     DO_TEST_GUESTDATA("ppc64", "host", "guest-legacy-incompatible", ppc_models, NULL, -1);
     DO_TEST_GUESTDATA("ppc64", "host", "guest-legacy-invalid", ppc_models, NULL, -1);
 
+    DO_TEST_CPUID("x86", "A10-5800K", true);
+
 #if WITH_QEMU && WITH_YAJL
     qemuTestDriverFree(&driver);
 #endif
diff --git a/tests/cputestdata/x86-cpuid-A10-5800K-guest.xml b/tests/cputestdata/x86-cpuid-A10-5800K-guest.xml
new file mode 100644
index 0000000..ded7b30
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-A10-5800K-guest.xml
@@ -0,0 +1,26 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Opteron_G5</model>
+  <vendor>AMD</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ht'/>
+  <feature policy='require' name='monitor'/>
+  <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='mmxext'/>
+  <feature policy='require' name='fxsr_opt'/>
+  <feature policy='require' name='cmp_legacy'/>
+  <feature policy='require' name='extapic'/>
+  <feature policy='require' name='cr8legacy'/>
+  <feature policy='require' name='osvw'/>
+  <feature policy='require' name='ibs'/>
+  <feature policy='require' name='skinit'/>
+  <feature policy='require' name='wdt'/>
+  <feature policy='require' name='lwp'/>
+  <feature policy='require' name='tce'/>
+  <feature policy='require' name='nodeid_msr'/>
+  <feature policy='require' name='topoext'/>
+  <feature policy='require' name='perfctr_core'/>
+  <feature policy='require' name='perfctr_nb'/>
+  <feature policy='require' name='bmi1'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-A10-5800K-host.xml b/tests/cputestdata/x86-cpuid-A10-5800K-host.xml
new file mode 100644
index 0000000..4ee57d2
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-A10-5800K-host.xml
@@ -0,0 +1,26 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Opteron_G5</model>
+  <vendor>AMD</vendor>
+  <feature name='vme'/>
+  <feature name='ht'/>
+  <feature name='monitor'/>
+  <feature name='osxsave'/>
+  <feature name='mmxext'/>
+  <feature name='fxsr_opt'/>
+  <feature name='cmp_legacy'/>
+  <feature name='extapic'/>
+  <feature name='cr8legacy'/>
+  <feature name='osvw'/>
+  <feature name='ibs'/>
+  <feature name='skinit'/>
+  <feature name='wdt'/>
+  <feature name='lwp'/>
+  <feature name='tce'/>
+  <feature name='nodeid_msr'/>
+  <feature name='topoext'/>
+  <feature name='perfctr_core'/>
+  <feature name='perfctr_nb'/>
+  <feature name='bmi1'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-A10-5800K-json.xml b/tests/cputestdata/x86-cpuid-A10-5800K-json.xml
new file mode 100644
index 0000000..6ebef60
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-A10-5800K-json.xml
@@ -0,0 +1,16 @@
+<cpu mode='custom' match='exact'>
+  <arch>x86_64</arch>
+  <model fallback='forbid'>Opteron_G5</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='cmp_legacy'/>
+  <feature policy='require' name='cr8legacy'/>
+  <feature policy='require' name='osvw'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='bmi1'/>
+  <feature policy='disable' name='rdtscp'/>
+  <feature policy='disable' name='svm'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-A10-5800K.json b/tests/cputestdata/x86-cpuid-A10-5800K.json
new file mode 100644
index 0000000..53b39ad
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-A10-5800K.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": 2165747
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 2147483649,
+      "features": 642779136
+    },
+    {
+      "cpuid-register": "EBX",
+      "cpuid-input-ecx": 0,
+      "cpuid-input-eax": 7,
+      "features": 10
+    },
+    {
+      "cpuid-register": "ECX",
+      "cpuid-input-eax": 1,
+      "features": 3065524739
+    },
+    {
+      "cpuid-register": "EDX",
+      "cpuid-input-eax": 1,
+      "features": 126614527
+    }
+  ],
+  "id": "feature-words"
+}
+
+{
+  "return": 21,
+  "id": "family"
+}
+
+{
+  "return": 16,
+  "id": "model"
+}
+
+{
+  "return": 1,
+  "id": "stepping"
+}
+
+{
+  "return": "AMD A10-5800K APU with Radeon(tm) HD Graphics  ",
+  "id": "model-id"
+}
diff --git a/tests/cputestdata/x86-cpuid-A10-5800K.xml b/tests/cputestdata/x86-cpuid-A10-5800K.xml
new file mode 100644
index 0000000..2889056
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-A10-5800K.xml
@@ -0,0 +1,50 @@
+<!-- AMD A10-5800K APU with Radeon(tm) HD Graphics -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000d' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00610f01' ebx='0x00040800' ecx='0x3e98320b' 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='0x00000006' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000001' edx='0x00000000'/>
+  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000008' 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='0x00000000' ebx='0x00000000' ecx='0x00000000' 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='0x00000007' ebx='0x00000340' ecx='0x000003c0' edx='0x40000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x3e' eax='0x00000080' ebx='0x00000340' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x8000001e' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00610f01' ebx='0x20000000' ecx='0x01ebbfff' edx='0x2fd3fbff'/>
+  <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x2d303141' ecx='0x30303835' edx='0x5041204b'/>
+  <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x69772055' ebx='0x52206874' ecx='0x6f656461' edx='0x6d74286e'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x44482029' ebx='0x61724720' ecx='0x63696870' edx='0x00202073'/>
+  <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff40ff18' ebx='0xff40ff30' ecx='0x10040140' edx='0x40020140'/>
+  <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x64006400' ebx='0x64004200' ecx='0x08008140' edx='0x00000000'/>
+  <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000007d9'/>
+  <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030' ebx='0x00000000' ecx='0x00004003' 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='0x00010000' ecx='0x00000000' edx='0x00001cff'/>
+  <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='0xf040f018' ebx='0x64006400' 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='0x000000ff' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x8000001c' ecx_in='0x00' eax='0x00000000' ebx='0x80032013' ecx='0x00010200' edx='0x8000000f'/>
+  <cpuid eax_in='0x8000001d' ecx_in='0x00' eax='0x00000121' ebx='0x00c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x00000010' ebx='0x00000100' 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

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]