From f46b5b7971ca412dfc538ab06e3d66ff2e61e4bfe1c3ffa83bf5e30b43dfb30d Mon Sep 17 00:00:00 2001 From: James Fehlig Date: Fri, 15 Sep 2017 18:42:21 +0000 Subject: [PATCH] Accepting request 526415 from home:jfehlig:branches:Virtualization - cpu: Add new EPYC CPU model 92bd87a2-ryzen-test-data.patch, 5c83b360-epyc-test-data.patch, a0b62843-epyc-cpu-model.patch bsc#1052825 OBS-URL: https://build.opensuse.org/request/show/526415 OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=620 --- 5c83b360-epyc-test-data.patch | 490 +++++++++++++++++++++++++++++++++ 92bd87a2-ryzen-test-data.patch | 450 ++++++++++++++++++++++++++++++ a0b62843-epyc-cpu-model.patch | 388 ++++++++++++++++++++++++++ libvirt-power8-models.patch | 2 +- libvirt.changes | 8 + libvirt.spec | 6 + 6 files changed, 1343 insertions(+), 1 deletion(-) create mode 100644 5c83b360-epyc-test-data.patch create mode 100644 92bd87a2-ryzen-test-data.patch create mode 100644 a0b62843-epyc-cpu-model.patch diff --git a/5c83b360-epyc-test-data.patch b/5c83b360-epyc-test-data.patch new file mode 100644 index 0000000..13b1396 --- /dev/null +++ b/5c83b360-epyc-test-data.patch @@ -0,0 +1,490 @@ +commit 5c83b3603cc01c29af3c21d6beec549c3c0f9a1e +Author: Jiri Denemark +Date: Thu Sep 7 12:58:41 2017 +0200 + + tests: Add CPUID data for AMD EPYC 7601 32-Core Processor + + Signed-off-by: Jiri Denemark + Reviewed-by: Pavel Hrdina + +Index: libvirt-3.7.0/tests/cputest.c +=================================================================== +--- libvirt-3.7.0.orig/tests/cputest.c ++++ libvirt-3.7.0/tests/cputest.c +@@ -994,6 +994,7 @@ mymain(void) + DO_TEST_CPUID(VIR_ARCH_X86_64, "Core-i7-5600U-arat", true); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Core2-E6850", true); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Core2-Q9500", false); ++ DO_TEST_CPUID(VIR_ARCH_X86_64, "EPYC-7601-32-Core", true); + DO_TEST_CPUID(VIR_ARCH_X86_64, "FX-8150", false); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Opteron-1352", false); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Opteron-2350", true); +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml +@@ -0,0 +1,8 @@ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-enabled.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-enabled.xml +@@ -0,0 +1,10 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +@@ -0,0 +1,40 @@ ++ ++ Opteron_G5 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +@@ -0,0 +1,48 @@ ++ ++ x86_64 ++ Opteron_G3 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-json.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-json.xml +@@ -0,0 +1,33 @@ ++ ++ Opteron_G5 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.json +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.json +@@ -0,0 +1,241 @@ ++{ ++ "return": { ++ "model": { ++ "name": "base", ++ "props": { ++ "phys-bits": 0, ++ "core-id": -1, ++ "xlevel": 2147483679, ++ "cmov": true, ++ "ia64": false, ++ "aes": true, ++ "mmx": true, ++ "arat": true, ++ "rdpid": false, ++ "pause-filter": false, ++ "xsavec": true, ++ "osxsave": false, ++ "tsc-frequency": 0, ++ "xd": true, ++ "hv-vendor-id": "", ++ "kvm-asyncpf": true, ++ "kvm_asyncpf": true, ++ "perfctr_core": false, ++ "perfctr-core": false, ++ "mpx": false, ++ "avx512cd": false, ++ "decodeassists": false, ++ "pbe": false, ++ "sse4_1": true, ++ "sse4.1": true, ++ "sse4-1": true, ++ "family": 23, ++ "vmware-cpuid-freq": true, ++ "avx512f": false, ++ "xcrypt": false, ++ "hv-runtime": false, ++ "msr": true, ++ "mce": true, ++ "mca": true, ++ "thread-id": -1, ++ "min-level": 13, ++ "xgetbv1": true, ++ "cid": false, ++ "hv-relaxed": false, ++ "fxsr": true, ++ "ds": false, ++ "hv-crash": false, ++ "xsaveopt": true, ++ "xtpr": false, ++ "avx512-vpopcntdq": false, ++ "phe": false, ++ "avx512vl": false, ++ "extapic": false, ++ "3dnowprefetch": true, ++ "cr8legacy": true, ++ "cpuid-0xb": true, ++ "xcrypt-en": false, ++ "kvm_pv_eoi": true, ++ "apic-id": 4294967295, ++ "pn": false, ++ "dca": false, ++ "vendor": "AuthenticAMD", ++ "pku": false, ++ "smx": false, ++ "cmp-legacy": true, ++ "cmp_legacy": true, ++ "node-id": -1, ++ "avx512-4fmaps": false, ++ "vmcb-clean": false, ++ "vmcb_clean": false, ++ "3dnowext": false, ++ "hle": false, ++ "npt": true, ++ "memory": "/machine/unattached/system[0]", ++ "clwb": false, ++ "lbrv": false, ++ "adx": true, ++ "ss": false, ++ "pni": true, ++ "svm_lock": false, ++ "svm-lock": false, ++ "smep": true, ++ "pfthreshold": false, ++ "smap": true, ++ "x2apic": true, ++ "avx512vbmi": false, ++ "hv-stimer": false, ++ "i64": true, ++ "flushbyasid": false, ++ "f16c": true, ++ "ace2-en": false, ++ "pat": true, ++ "pae": true, ++ "sse": true, ++ "phe-en": false, ++ "kvm-nopiodelay": true, ++ "kvm_nopiodelay": true, ++ "tm": false, ++ "kvmclock-stable-bit": true, ++ "hypervisor": true, ++ "socket-id": -1, ++ "pcommit": false, ++ "syscall": true, ++ "level": 13, ++ "avx512dq": false, ++ "svm": false, ++ "full-cpuid-auto-level": true, ++ "hv-reset": false, ++ "invtsc": false, ++ "sse3": true, ++ "sse2": true, ++ "est": false, ++ "avx512ifma": false, ++ "tm2": false, ++ "kvm-pv-eoi": true, ++ "cx8": true, ++ "kvm-mmu": false, ++ "kvm_mmu": false, ++ "sse4_2": true, ++ "sse4.2": true, ++ "sse4-2": true, ++ "pge": true, ++ "fill-mtrr-mask": true, ++ "pdcm": false, ++ "nodeid_msr": false, ++ "model": 1, ++ "movbe": true, ++ "nrip-save": true, ++ "nrip_save": true, ++ "sse4a": true, ++ "ssse3": true, ++ "kvm_pv_unhalt": true, ++ "invpcid": false, ++ "pdpe1gb": true, ++ "tsc-deadline": true, ++ "fma": true, ++ "cx16": true, ++ "de": true, ++ "enforce": false, ++ "stepping": 2, ++ "xsave": true, ++ "clflush": true, ++ "skinit": false, ++ "tce": false, ++ "tsc": true, ++ "fpu": true, ++ "ds-cpl": false, ++ "ds_cpl": false, ++ "ibs": false, ++ "host-phys-bits": false, ++ "fma4": false, ++ "la57": false, ++ "osvw": true, ++ "check": true, ++ "hv-spinlocks": -1, ++ "pmm": false, ++ "apic": true, ++ "pmu": false, ++ "min-xlevel2": 0, ++ "tsc-adjust": true, ++ "tsc_adjust": true, ++ "kvm-steal-time": true, ++ "kvm_steal_time": true, ++ "kvmclock": true, ++ "l3-cache": true, ++ "lwp": false, ++ "xop": false, ++ "avx": true, ++ "ospke": false, ++ "ace2": false, ++ "acpi": false, ++ "avx512bw": false, ++ "hv-vapic": false, ++ "fsgsbase": true, ++ "ht": false, ++ "nx": true, ++ "pclmulqdq": true, ++ "mmxext": true, ++ "popcnt": true, ++ "xsaves": false, ++ "lm": true, ++ "umip": false, ++ "avx2": true, ++ "pse": true, ++ "sep": true, ++ "pclmuldq": true, ++ "nodeid-msr": false, ++ "kvm": true, ++ "misalignsse": true, ++ "min-xlevel": 2147483679, ++ "bmi2": true, ++ "bmi1": true, ++ "kvm-pv-unhalt": true, ++ "realized": false, ++ "tsc_scale": false, ++ "tsc-scale": false, ++ "topoext": false, ++ "hv-vpindex": false, ++ "xlevel2": 0, ++ "clflushopt": true, ++ "kvm-no-smi-migration": false, ++ "monitor": false, ++ "avx512er": false, ++ "pmm-en": false, ++ "pcid": false, ++ "3dnow": false, ++ "erms": false, ++ "lahf-lm": true, ++ "lahf_lm": true, ++ "xstore": false, ++ "hv-synic": false, ++ "fxsr-opt": true, ++ "fxsr_opt": true, ++ "rtm": false, ++ "lmce": false, ++ "hv-time": false, ++ "perfctr-nb": false, ++ "perfctr_nb": false, ++ "ffxsr": true, ++ "rdrand": true, ++ "rdseed": true, ++ "avx512-4vnniw": false, ++ "vme": true, ++ "vmx": false, ++ "dtes64": false, ++ "mtrr": true, ++ "rdtscp": true, ++ "pse36": true, ++ "tbm": false, ++ "wdt": false, ++ "pause_filter": false, ++ "model-id": "AMD EPYC 7601 32-Core Processor ", ++ "sha-ni": true, ++ "abm": true, ++ "avx512pf": false, ++ "xstore-en": false ++ } ++ } ++ }, ++ "id": "model-expansion" ++} +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.xml +@@ -0,0 +1,54 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ diff --git a/92bd87a2-ryzen-test-data.patch b/92bd87a2-ryzen-test-data.patch new file mode 100644 index 0000000..66a9380 --- /dev/null +++ b/92bd87a2-ryzen-test-data.patch @@ -0,0 +1,450 @@ +commit 92bd87a2395c8e350aa2d5694d4b8e95ce7349b0 +Author: Jiri Denemark +Date: Fri Apr 28 14:09:45 2017 +0200 + + tests: Add CPUID data for AMD Ryzen 7 1800X Eight-Core Processor + + Signed-off-by: Jiri Denemark + Reviewed-by: Pavel Hrdina + +Index: libvirt-3.7.0/tests/cputest.c +=================================================================== +--- libvirt-3.7.0.orig/tests/cputest.c ++++ libvirt-3.7.0/tests/cputest.c +@@ -1001,6 +1001,7 @@ mymain(void) + DO_TEST_CPUID(VIR_ARCH_X86_64, "Opteron-6282", false); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Pentium-P6100", false); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Phenom-B95", true); ++ DO_TEST_CPUID(VIR_ARCH_X86_64, "Ryzen-7-1800X-Eight-Core", true); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-5110", false); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E3-1245", true); + DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2630", true); +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml +@@ -0,0 +1,9 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-enabled.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-enabled.xml +@@ -0,0 +1,10 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +@@ -0,0 +1,40 @@ ++ ++ Opteron_G5 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +@@ -0,0 +1,48 @@ ++ ++ x86_64 ++ Opteron_G3 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-json.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-json.xml +@@ -0,0 +1,32 @@ ++ ++ Opteron_G5 ++ AMD ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.json +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.json +@@ -0,0 +1,203 @@ ++{ ++ "return": { ++ "model": { ++ "name": "base", ++ "props": { ++ "pfthreshold": false, ++ "pku": false, ++ "rtm": false, ++ "tsc_adjust": true, ++ "tsc-deadline": true, ++ "xstore-en": false, ++ "tsc-scale": false, ++ "sse": true, ++ "smap": true, ++ "stepping": 1, ++ "tce": false, ++ "kvm_steal_time": true, ++ "smep": true, ++ "rdpid": false, ++ "xcrypt": false, ++ "sse4_2": true, ++ "monitor": false, ++ "sse4_1": true, ++ "kvm-mmu": false, ++ "flushbyasid": false, ++ "kvm-steal-time": true, ++ "lm": true, ++ "tsc": true, ++ "adx": true, ++ "fxsr": true, ++ "sha-ni": false, ++ "tm": false, ++ "pclmuldq": true, ++ "xgetbv1": true, ++ "xstore": false, ++ "vmcb_clean": false, ++ "vme": true, ++ "vendor": "AuthenticAMD", ++ "arat": true, ++ "ffxsr": true, ++ "de": true, ++ "avx512f": false, ++ "pse": true, ++ "ds-cpl": false, ++ "tbm": false, ++ "ia64": false, ++ "phe-en": false, ++ "f16c": true, ++ "ds": false, ++ "mpx": false, ++ "tsc-adjust": true, ++ "aes": true, ++ "avx2": true, ++ "pbe": false, ++ "cx16": true, ++ "ds_cpl": false, ++ "movbe": true, ++ "perfctr-nb": false, ++ "nrip_save": true, ++ "kvm_mmu": false, ++ "ospke": false, ++ "avx512ifma": false, ++ "vmx": false, ++ "sep": true, ++ "xsaveopt": true, ++ "sse4a": true, ++ "avx512dq": false, ++ "i64": true, ++ "avx512-4vnniw": false, ++ "xsave": true, ++ "erms": false, ++ "hle": false, ++ "nodeid_msr": false, ++ "est": false, ++ "svm_lock": false, ++ "xop": false, ++ "model-id": "AMD Ryzen 7 1800X Eight-Core Processor ", ++ "abm": true, ++ "avx512er": false, ++ "sse4.1": true, ++ "sse4.2": true, ++ "pause-filter": false, ++ "lahf-lm": true, ++ "kvm-nopiodelay": true, ++ "cmp_legacy": true, ++ "acpi": false, ++ "fma4": false, ++ "popcnt": true, ++ "mmx": true, ++ "osxsave": false, ++ "pcommit": false, ++ "avx512pf": false, ++ "clwb": false, ++ "dca": false, ++ "pdcm": false, ++ "xcrypt-en": false, ++ "3dnow": false, ++ "invtsc": false, ++ "tm2": false, ++ "hypervisor": true, ++ "kvmclock-stable-bit": true, ++ "fxsr-opt": true, ++ "pcid": false, ++ "sse4-1": true, ++ "sse4-2": true, ++ "avx512-vpopcntdq": false, ++ "avx512-4fmaps": false, ++ "pause_filter": false, ++ "svm-lock": false, ++ "rdrand": true, ++ "nrip-save": true, ++ "avx512vl": false, ++ "x2apic": true, ++ "kvmclock": true, ++ "pge": true, ++ "family": 23, ++ "dtes64": false, ++ "xd": true, ++ "kvm_pv_eoi": true, ++ "ace2": false, ++ "kvm_pv_unhalt": true, ++ "xtpr": false, ++ "perfctr_nb": false, ++ "avx512bw": false, ++ "nx": true, ++ "lwp": false, ++ "msr": true, ++ "ace2-en": false, ++ "decodeassists": false, ++ "perfctr-core": false, ++ "pn": false, ++ "fma": true, ++ "nodeid-msr": false, ++ "kvm_asyncpf": true, ++ "clflush": true, ++ "cx8": true, ++ "mce": true, ++ "avx512cd": false, ++ "cr8legacy": true, ++ "mca": true, ++ "pni": true, ++ "rdseed": true, ++ "apic": true, ++ "fsgsbase": true, ++ "cmp-legacy": true, ++ "kvm-pv-unhalt": true, ++ "rdtscp": true, ++ "mmxext": true, ++ "cid": false, ++ "ssse3": true, ++ "extapic": false, ++ "pse36": true, ++ "mtrr": true, ++ "ibs": false, ++ "la57": false, ++ "avx": true, ++ "syscall": true, ++ "umip": false, ++ "invpcid": false, ++ "avx512vbmi": false, ++ "kvm-asyncpf": true, ++ "vmcb-clean": false, ++ "pmm": false, ++ "cmov": true, ++ "perfctr_core": false, ++ "misalignsse": true, ++ "clflushopt": true, ++ "pat": true, ++ "lbrv": false, ++ "3dnowprefetch": true, ++ "fpu": true, ++ "pae": true, ++ "wdt": false, ++ "tsc_scale": false, ++ "skinit": false, ++ "fxsr_opt": true, ++ "kvm_nopiodelay": true, ++ "pmm-en": false, ++ "phe": false, ++ "3dnowext": false, ++ "osvw": true, ++ "ht": false, ++ "pdpe1gb": true, ++ "kvm-pv-eoi": true, ++ "npt": true, ++ "xsavec": true, ++ "lahf_lm": true, ++ "pclmulqdq": true, ++ "svm": true, ++ "sse3": true, ++ "sse2": true, ++ "ss": false, ++ "topoext": false, ++ "smx": false, ++ "bmi1": true, ++ "bmi2": true, ++ "xsaves": false, ++ "model": 1 ++ } ++ } ++ }, ++ "id": "model-expansion" ++} +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.xml +=================================================================== +--- /dev/null ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.xml +@@ -0,0 +1,52 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ diff --git a/a0b62843-epyc-cpu-model.patch b/a0b62843-epyc-cpu-model.patch new file mode 100644 index 0000000..3dc0d4f --- /dev/null +++ b/a0b62843-epyc-cpu-model.patch @@ -0,0 +1,388 @@ +commit a0b628432a11ec97bbda9893504fb8180c36186e +Author: Brijesh Singh +Date: Wed Aug 23 13:49:41 2017 -0500 + + cpu: Add new EPYC CPU model + + Add a new CPU model called 'EPYC' to model processors from AMD EPYC + family (which includes EPYC 76xx,75xx,74xx, 73xx and 72xx). + + The following features bits have been added/removed compare to Opteron_G5 + + Added: monitor, movbe, rdrand, mmxext, ffxsr, rdtscp, cr8legacy, osvw, + fsgsbase, bmi1, avx2, smep, bmi2, rdseed, adx, smap, clfshopt, sha + xsaveopt, xsavec, xgetbv1, arat + + Removed: xop, fma4, tbm + + The patch is depend on EPYC CPU model supported introduced in qemu [1] + + [1] https://patchwork.kernel.org/patch/9902205/ + + Cc: Tom Lendacky + Signed-off-by: Brijesh Singh + Signed-off-by: Jiri Denemark + Reviewed-by: Pavel Hrdina + +Index: libvirt-3.7.0/src/cpu/cpu_map.xml +=================================================================== +--- libvirt-3.7.0.orig/src/cpu/cpu_map.xml ++++ libvirt-3.7.0/src/cpu/cpu_map.xml +@@ -260,6 +260,9 @@ + + + ++ ++ ++ + + + +@@ -1545,6 +1548,77 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +@@ -1,32 +1,11 @@ + +- Opteron_G5 ++ EPYC + AMD +- + +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- + + +- +- + + + +@@ -34,7 +13,4 @@ + + + +- +- +- + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +@@ -1,43 +1,12 @@ + + x86_64 +- Opteron_G3 ++ EPYC + AMD +- + +- +- +- +- +- +- +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- +- + + +- +- +- + + + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-json.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-json.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-json.xml +@@ -1,33 +1,11 @@ + +- Opteron_G5 ++ EPYC + AMD +- + +- + +- + +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- ++ + +- +- +- + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +@@ -1,32 +1,11 @@ + +- Opteron_G5 ++ EPYC + AMD +- + +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- + + +- +- + + + +@@ -34,7 +13,4 @@ + + + +- +- +- + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +@@ -1,43 +1,12 @@ + + x86_64 +- Opteron_G3 ++ EPYC + AMD +- + +- +- +- +- +- +- +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- +- + + +- +- +- + + + +Index: libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-json.xml +=================================================================== +--- libvirt-3.7.0.orig/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-json.xml ++++ libvirt-3.7.0/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-json.xml +@@ -1,32 +1,11 @@ + +- Opteron_G5 ++ EPYC + AMD +- + +- + +- + +- +- + +- +- +- +- +- +- +- +- +- +- +- +- +- + +- +- +- +- +- ++ ++ + diff --git a/libvirt-power8-models.patch b/libvirt-power8-models.patch index 9f25a7a..26c3a39 100644 --- a/libvirt-power8-models.patch +++ b/libvirt-power8-models.patch @@ -6,7 +6,7 @@ Index: libvirt-3.7.0/src/cpu/cpu_map.xml =================================================================== --- libvirt-3.7.0.orig/src/cpu/cpu_map.xml +++ libvirt-3.7.0/src/cpu/cpu_map.xml -@@ -1569,6 +1569,8 @@ +@@ -1643,6 +1643,8 @@ diff --git a/libvirt.changes b/libvirt.changes index eacde35..04da877 100644 --- a/libvirt.changes +++ b/libvirt.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Fri Sep 15 17:29:55 UTC 2017 - jfehlig@suse.com + +- cpu: Add new EPYC CPU model + 92bd87a2-ryzen-test-data.patch, 5c83b360-epyc-test-data.patch, + a0b62843-epyc-cpu-model.patch + bsc#1052825 + ------------------------------------------------------------------- Fri Sep 15 16:20:34 UTC 2017 - jfehlig@suse.com diff --git a/libvirt.spec b/libvirt.spec index 4af7890..61b919b 100644 --- a/libvirt.spec +++ b/libvirt.spec @@ -304,6 +304,9 @@ Source4: libvirt-supportconfig Source99: baselibs.conf Source100: %{name}-rpmlintrc # Upstream patches +Patch0: 92bd87a2-ryzen-test-data.patch +Patch1: 5c83b360-epyc-test-data.patch +Patch2: a0b62843-epyc-cpu-model.patch # Patches pending upstream review Patch100: libxl-dom-reset.patch Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch @@ -869,6 +872,9 @@ libvirt plugin for NSS for translating domain names into IP addresses. %prep %setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 %patch100 -p1 %patch101 -p1 %patch150 -p1