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