Accepting request 532351 from Virtualization

1

OBS-URL: https://build.opensuse.org/request/show/532351
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=237
This commit is contained in:
Dominique Leuenberger 2017-10-10 09:38:06 +00:00 committed by Git OBS Bridge
commit cd1d33846d
37 changed files with 268 additions and 1600 deletions

View File

@ -1,490 +0,0 @@
commit 5c83b3603cc01c29af3c21d6beec549c3c0f9a1e
Author: Jiri Denemark <jdenemar@redhat.com>
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 <jdenemar@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
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 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000014f6'/>
+</cpudata>
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 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7f83203' edx='0x078bfbff'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x209c01ab' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000007' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x000003f3' edx='0x2e500800'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000009'/>
+</cpudata>
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 @@
+<cpu mode='custom' match='exact'>
+ <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='movbe'/>
+ <feature policy='require' name='osxsave'/>
+ <feature policy='require' name='rdrand'/>
+ <feature policy='require' name='arat'/>
+ <feature policy='require' name='fsgsbase'/>
+ <feature policy='require' name='bmi1'/>
+ <feature policy='require' name='avx2'/>
+ <feature policy='require' name='smep'/>
+ <feature policy='require' name='bmi2'/>
+ <feature policy='require' name='rdseed'/>
+ <feature policy='require' name='adx'/>
+ <feature policy='require' name='smap'/>
+ <feature policy='require' name='clflushopt'/>
+ <feature policy='require' name='xsaveopt'/>
+ <feature policy='require' name='xsavec'/>
+ <feature policy='require' name='xgetbv1'/>
+ <feature policy='require' name='xsaves'/>
+ <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='skinit'/>
+ <feature policy='require' name='wdt'/>
+ <feature policy='require' name='tce'/>
+ <feature policy='require' name='topoext'/>
+ <feature policy='require' name='perfctr_core'/>
+ <feature policy='require' name='perfctr_nb'/>
+ <feature policy='require' name='invtsc'/>
+ <feature policy='disable' name='xop'/>
+ <feature policy='disable' name='fma4'/>
+ <feature policy='disable' name='tbm'/>
+</cpu>
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 @@
+<cpu>
+ <arch>x86_64</arch>
+ <model>Opteron_G3</model>
+ <vendor>AMD</vendor>
+ <feature name='vme'/>
+ <feature name='ht'/>
+ <feature name='pclmuldq'/>
+ <feature name='ssse3'/>
+ <feature name='fma'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='movbe'/>
+ <feature name='aes'/>
+ <feature name='xsave'/>
+ <feature name='osxsave'/>
+ <feature name='avx'/>
+ <feature name='f16c'/>
+ <feature name='rdrand'/>
+ <feature name='arat'/>
+ <feature name='fsgsbase'/>
+ <feature name='bmi1'/>
+ <feature name='avx2'/>
+ <feature name='smep'/>
+ <feature name='bmi2'/>
+ <feature name='rdseed'/>
+ <feature name='adx'/>
+ <feature name='smap'/>
+ <feature name='clflushopt'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsavec'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsaves'/>
+ <feature name='mmxext'/>
+ <feature name='fxsr_opt'/>
+ <feature name='pdpe1gb'/>
+ <feature name='cmp_legacy'/>
+ <feature name='extapic'/>
+ <feature name='cr8legacy'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='osvw'/>
+ <feature name='skinit'/>
+ <feature name='wdt'/>
+ <feature name='tce'/>
+ <feature name='topoext'/>
+ <feature name='perfctr_core'/>
+ <feature name='perfctr_nb'/>
+ <feature name='invtsc'/>
+</cpu>
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 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>Opteron_G5</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='vme'/>
+ <feature policy='require' name='x2apic'/>
+ <feature policy='require' name='movbe'/>
+ <feature policy='require' name='tsc-deadline'/>
+ <feature policy='require' name='rdrand'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='arat'/>
+ <feature policy='require' name='fsgsbase'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='bmi1'/>
+ <feature policy='require' name='avx2'/>
+ <feature policy='require' name='smep'/>
+ <feature policy='require' name='bmi2'/>
+ <feature policy='require' name='rdseed'/>
+ <feature policy='require' name='adx'/>
+ <feature policy='require' name='smap'/>
+ <feature policy='require' name='clflushopt'/>
+ <feature policy='require' name='xsaveopt'/>
+ <feature policy='require' name='xsavec'/>
+ <feature policy='require' name='xgetbv1'/>
+ <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='disable' name='svm'/>
+ <feature policy='disable' name='xop'/>
+ <feature policy='disable' name='fma4'/>
+ <feature policy='disable' name='tbm'/>
+</cpu>
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 @@
+<!-- AMD EPYC 7601 32-Core Processor -->
+<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='0x00800f12' ebx='0x08400800' ecx='0x7ed8320b' 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='0x00000011'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000001' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x209c01a9' 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='0x00000340' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000340' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x8000001f' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00800f12' ebx='0x40000000' ecx='0x35c233ff' edx='0x2fd3fbff'/>
+ <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x43595045' ecx='0x30363720' edx='0x32332031'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x726f432d' ebx='0x72502065' ecx='0x7365636f' edx='0x20726f73'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x20202020' ebx='0x20202020' ecx='0x20202020' edx='0x00202020'/>
+ <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff40ff40' ebx='0xff40ff40' ecx='0x20080140' edx='0x40040140'/>
+ <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x36006400' ebx='0x56006400' ecx='0x02006140' edx='0x0200c140'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x0000001b' ecx='0x00000000' edx='0x00006799'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030' ebx='0x00000007' ecx='0x0000603f' 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='0x00008000' ecx='0x00000000' edx='0x0001bcff'/>
+ <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='0xf040f040' ebx='0x00000000' 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='0x000003ff' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x00' eax='0x00004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x01' eax='0x00004122' ebx='0x00c0003f' ecx='0x000000ff' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x02' eax='0x00004143' ebx='0x01c0003f' ecx='0x000003ff' edx='0x00000002'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x03' eax='0x0001c163' ebx='0x03c0003f' ecx='0x00001fff' edx='0x00000001'/>
+ <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x00000008' ebx='0x00000104' ecx='0x00000300' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001f' ecx_in='0x00' eax='0x0000000f' ebx='0x0000016f' ecx='0x0000000f' edx='0x00000001'/>
+ <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>

View File

@ -1,450 +0,0 @@
commit 92bd87a2395c8e350aa2d5694d4b8e95ce7349b0
Author: Jiri Denemark <jdenemar@redhat.com>
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 <jdenemar@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
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 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x20000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c23008' edx='0x00000000'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000014f6'/>
+</cpudata>
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 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7f83203' edx='0x078bfbff'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x009c01ab' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000007' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x000003f7' edx='0x2e500800'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000009'/>
+</cpudata>
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 @@
+<cpu mode='custom' match='exact'>
+ <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='movbe'/>
+ <feature policy='require' name='osxsave'/>
+ <feature policy='require' name='rdrand'/>
+ <feature policy='require' name='arat'/>
+ <feature policy='require' name='fsgsbase'/>
+ <feature policy='require' name='bmi1'/>
+ <feature policy='require' name='avx2'/>
+ <feature policy='require' name='smep'/>
+ <feature policy='require' name='bmi2'/>
+ <feature policy='require' name='rdseed'/>
+ <feature policy='require' name='adx'/>
+ <feature policy='require' name='smap'/>
+ <feature policy='require' name='clflushopt'/>
+ <feature policy='require' name='xsaveopt'/>
+ <feature policy='require' name='xsavec'/>
+ <feature policy='require' name='xgetbv1'/>
+ <feature policy='require' name='xsaves'/>
+ <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='skinit'/>
+ <feature policy='require' name='wdt'/>
+ <feature policy='require' name='tce'/>
+ <feature policy='require' name='topoext'/>
+ <feature policy='require' name='perfctr_core'/>
+ <feature policy='require' name='perfctr_nb'/>
+ <feature policy='require' name='invtsc'/>
+ <feature policy='disable' name='xop'/>
+ <feature policy='disable' name='fma4'/>
+ <feature policy='disable' name='tbm'/>
+</cpu>
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 @@
+<cpu>
+ <arch>x86_64</arch>
+ <model>Opteron_G3</model>
+ <vendor>AMD</vendor>
+ <feature name='vme'/>
+ <feature name='ht'/>
+ <feature name='pclmuldq'/>
+ <feature name='ssse3'/>
+ <feature name='fma'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='movbe'/>
+ <feature name='aes'/>
+ <feature name='xsave'/>
+ <feature name='osxsave'/>
+ <feature name='avx'/>
+ <feature name='f16c'/>
+ <feature name='rdrand'/>
+ <feature name='arat'/>
+ <feature name='fsgsbase'/>
+ <feature name='bmi1'/>
+ <feature name='avx2'/>
+ <feature name='smep'/>
+ <feature name='bmi2'/>
+ <feature name='rdseed'/>
+ <feature name='adx'/>
+ <feature name='smap'/>
+ <feature name='clflushopt'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsavec'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsaves'/>
+ <feature name='mmxext'/>
+ <feature name='fxsr_opt'/>
+ <feature name='pdpe1gb'/>
+ <feature name='cmp_legacy'/>
+ <feature name='extapic'/>
+ <feature name='cr8legacy'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='osvw'/>
+ <feature name='skinit'/>
+ <feature name='wdt'/>
+ <feature name='tce'/>
+ <feature name='topoext'/>
+ <feature name='perfctr_core'/>
+ <feature name='perfctr_nb'/>
+ <feature name='invtsc'/>
+</cpu>
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 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>Opteron_G5</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='vme'/>
+ <feature policy='require' name='x2apic'/>
+ <feature policy='require' name='movbe'/>
+ <feature policy='require' name='tsc-deadline'/>
+ <feature policy='require' name='rdrand'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='arat'/>
+ <feature policy='require' name='fsgsbase'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='bmi1'/>
+ <feature policy='require' name='avx2'/>
+ <feature policy='require' name='smep'/>
+ <feature policy='require' name='bmi2'/>
+ <feature policy='require' name='rdseed'/>
+ <feature policy='require' name='adx'/>
+ <feature policy='require' name='smap'/>
+ <feature policy='require' name='clflushopt'/>
+ <feature policy='require' name='xsaveopt'/>
+ <feature policy='require' name='xsavec'/>
+ <feature policy='require' name='xgetbv1'/>
+ <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='disable' name='xop'/>
+ <feature policy='disable' name='fma4'/>
+ <feature policy='disable' name='tbm'/>
+</cpu>
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 @@
+<!-- AMD Ryzen 7 1800X Eight-Core Processor -->
+<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='0x00800f11' ebx='0x09100800' ecx='0x7ed8320b' 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='0x00000004' ebx='0x00000000' ecx='0x00000001' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x209c01a9' 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='0x00000340' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000340' ecx='0x00000000' 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='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x8000001f' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00800f11' ebx='0x20000000' ecx='0x35c233ff' edx='0x2fd3fbff'/>
+ <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x657a7952' ecx='0x2037206e' edx='0x30303831'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x69452058' ebx='0x2d746867' ecx='0x65726f43' edx='0x6f725020'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x73736563' ebx='0x2020726f' ecx='0x20202020' edx='0x00202020'/>
+ <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff40ff40' ebx='0xff40ff40' ecx='0x20080140' edx='0x40040140'/>
+ <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x26006400' ebx='0x66006400' ecx='0x02006140' edx='0x00808140'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x0000001b' ecx='0x00000000' edx='0x00006599'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030' ebx='0x00000007' ecx='0x0000400f' 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='0x00008000' ecx='0x00000000' edx='0x0001bcff'/>
+ <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='0xf040f040' ebx='0x00000000' 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='0x000003ff' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x00' eax='0x00004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x00000009' ebx='0x00000104' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001f' ecx_in='0x00' eax='0x00000007' ebx='0x0000016f' ecx='0x0000000f' 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>

View File

@ -1,388 +0,0 @@
commit a0b628432a11ec97bbda9893504fb8180c36186e
Author: Brijesh Singh <brijesh.singh@amd.com>
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 <Thomas.Lendacky@amd.com>
Signed-off-by: Brijesh Singh <brijesh.singh@amd.com>
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
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 @@
<feature name='avx512cd'>
<cpuid eax_in='0x07' ecx_in='0x00' ebx='0x10000000'/>
</feature>
+ <feature name='sha-ni'>
+ <cpuid eax_in='0x07' ecx_in='0x00' ebx='0x20000000'/>
+ </feature>
<feature name='avx512bw'>
<cpuid eax_in='0x07' ecx_in='0x00' ebx='0x40000000'/>
</feature>
@@ -1545,6 +1548,77 @@
<feature name='xop'/>
<feature name='xsave'/>
</model>
+
+ <model name='EPYC'>
+ <signature family='23' model='1'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='monitor'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='vme'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveopt'/>
+ </model>
</arch>
<arch name='ppc64'>
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 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Opteron_G5</model>
+ <model fallback='forbid'>EPYC</model>
<vendor>AMD</vendor>
- <feature policy='require' name='vme'/>
<feature policy='require' name='ht'/>
- <feature policy='require' name='monitor'/>
- <feature policy='require' name='movbe'/>
<feature policy='require' name='osxsave'/>
- <feature policy='require' name='rdrand'/>
- <feature policy='require' name='arat'/>
- <feature policy='require' name='fsgsbase'/>
- <feature policy='require' name='bmi1'/>
- <feature policy='require' name='avx2'/>
- <feature policy='require' name='smep'/>
- <feature policy='require' name='bmi2'/>
- <feature policy='require' name='rdseed'/>
- <feature policy='require' name='adx'/>
- <feature policy='require' name='smap'/>
- <feature policy='require' name='clflushopt'/>
- <feature policy='require' name='xsaveopt'/>
- <feature policy='require' name='xsavec'/>
- <feature policy='require' name='xgetbv1'/>
<feature policy='require' name='xsaves'/>
- <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='skinit'/>
<feature policy='require' name='wdt'/>
<feature policy='require' name='tce'/>
@@ -34,7 +13,4 @@
<feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
- <feature policy='disable' name='xop'/>
- <feature policy='disable' name='fma4'/>
- <feature policy='disable' name='tbm'/>
</cpu>
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 @@
<cpu>
<arch>x86_64</arch>
- <model>Opteron_G3</model>
+ <model>EPYC</model>
<vendor>AMD</vendor>
- <feature name='vme'/>
<feature name='ht'/>
- <feature name='pclmuldq'/>
- <feature name='ssse3'/>
- <feature name='fma'/>
- <feature name='sse4.1'/>
- <feature name='sse4.2'/>
- <feature name='movbe'/>
- <feature name='aes'/>
- <feature name='xsave'/>
<feature name='osxsave'/>
- <feature name='avx'/>
- <feature name='f16c'/>
- <feature name='rdrand'/>
- <feature name='arat'/>
- <feature name='fsgsbase'/>
- <feature name='bmi1'/>
- <feature name='avx2'/>
- <feature name='smep'/>
- <feature name='bmi2'/>
- <feature name='rdseed'/>
- <feature name='adx'/>
- <feature name='smap'/>
- <feature name='clflushopt'/>
- <feature name='xsaveopt'/>
- <feature name='xsavec'/>
- <feature name='xgetbv1'/>
<feature name='xsaves'/>
- <feature name='mmxext'/>
- <feature name='fxsr_opt'/>
- <feature name='pdpe1gb'/>
<feature name='cmp_legacy'/>
<feature name='extapic'/>
- <feature name='cr8legacy'/>
- <feature name='3dnowprefetch'/>
- <feature name='osvw'/>
<feature name='skinit'/>
<feature name='wdt'/>
<feature name='tce'/>
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 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Opteron_G5</model>
+ <model fallback='forbid'>EPYC</model>
<vendor>AMD</vendor>
- <feature policy='require' name='vme'/>
<feature policy='require' name='x2apic'/>
- <feature policy='require' name='movbe'/>
<feature policy='require' name='tsc-deadline'/>
- <feature policy='require' name='rdrand'/>
<feature policy='require' name='hypervisor'/>
- <feature policy='require' name='arat'/>
- <feature policy='require' name='fsgsbase'/>
<feature policy='require' name='tsc_adjust'/>
- <feature policy='require' name='bmi1'/>
- <feature policy='require' name='avx2'/>
- <feature policy='require' name='smep'/>
- <feature policy='require' name='bmi2'/>
- <feature policy='require' name='rdseed'/>
- <feature policy='require' name='adx'/>
- <feature policy='require' name='smap'/>
- <feature policy='require' name='clflushopt'/>
- <feature policy='require' name='xsaveopt'/>
- <feature policy='require' name='xsavec'/>
- <feature policy='require' name='xgetbv1'/>
- <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='disable' name='monitor'/>
<feature policy='disable' name='svm'/>
- <feature policy='disable' name='xop'/>
- <feature policy='disable' name='fma4'/>
- <feature policy='disable' name='tbm'/>
</cpu>
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 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Opteron_G5</model>
+ <model fallback='forbid'>EPYC</model>
<vendor>AMD</vendor>
- <feature policy='require' name='vme'/>
<feature policy='require' name='ht'/>
- <feature policy='require' name='monitor'/>
- <feature policy='require' name='movbe'/>
<feature policy='require' name='osxsave'/>
- <feature policy='require' name='rdrand'/>
- <feature policy='require' name='arat'/>
- <feature policy='require' name='fsgsbase'/>
- <feature policy='require' name='bmi1'/>
- <feature policy='require' name='avx2'/>
- <feature policy='require' name='smep'/>
- <feature policy='require' name='bmi2'/>
- <feature policy='require' name='rdseed'/>
- <feature policy='require' name='adx'/>
- <feature policy='require' name='smap'/>
- <feature policy='require' name='clflushopt'/>
- <feature policy='require' name='xsaveopt'/>
- <feature policy='require' name='xsavec'/>
- <feature policy='require' name='xgetbv1'/>
<feature policy='require' name='xsaves'/>
- <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='skinit'/>
<feature policy='require' name='wdt'/>
<feature policy='require' name='tce'/>
@@ -34,7 +13,4 @@
<feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
- <feature policy='disable' name='xop'/>
- <feature policy='disable' name='fma4'/>
- <feature policy='disable' name='tbm'/>
</cpu>
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 @@
<cpu>
<arch>x86_64</arch>
- <model>Opteron_G3</model>
+ <model>EPYC</model>
<vendor>AMD</vendor>
- <feature name='vme'/>
<feature name='ht'/>
- <feature name='pclmuldq'/>
- <feature name='ssse3'/>
- <feature name='fma'/>
- <feature name='sse4.1'/>
- <feature name='sse4.2'/>
- <feature name='movbe'/>
- <feature name='aes'/>
- <feature name='xsave'/>
<feature name='osxsave'/>
- <feature name='avx'/>
- <feature name='f16c'/>
- <feature name='rdrand'/>
- <feature name='arat'/>
- <feature name='fsgsbase'/>
- <feature name='bmi1'/>
- <feature name='avx2'/>
- <feature name='smep'/>
- <feature name='bmi2'/>
- <feature name='rdseed'/>
- <feature name='adx'/>
- <feature name='smap'/>
- <feature name='clflushopt'/>
- <feature name='xsaveopt'/>
- <feature name='xsavec'/>
- <feature name='xgetbv1'/>
<feature name='xsaves'/>
- <feature name='mmxext'/>
- <feature name='fxsr_opt'/>
- <feature name='pdpe1gb'/>
<feature name='cmp_legacy'/>
<feature name='extapic'/>
- <feature name='cr8legacy'/>
- <feature name='3dnowprefetch'/>
- <feature name='osvw'/>
<feature name='skinit'/>
<feature name='wdt'/>
<feature name='tce'/>
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 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Opteron_G5</model>
+ <model fallback='forbid'>EPYC</model>
<vendor>AMD</vendor>
- <feature policy='require' name='vme'/>
<feature policy='require' name='x2apic'/>
- <feature policy='require' name='movbe'/>
<feature policy='require' name='tsc-deadline'/>
- <feature policy='require' name='rdrand'/>
<feature policy='require' name='hypervisor'/>
- <feature policy='require' name='arat'/>
- <feature policy='require' name='fsgsbase'/>
<feature policy='require' name='tsc_adjust'/>
- <feature policy='require' name='bmi1'/>
- <feature policy='require' name='avx2'/>
- <feature policy='require' name='smep'/>
- <feature policy='require' name='bmi2'/>
- <feature policy='require' name='rdseed'/>
- <feature policy='require' name='adx'/>
- <feature policy='require' name='smap'/>
- <feature policy='require' name='clflushopt'/>
- <feature policy='require' name='xsaveopt'/>
- <feature policy='require' name='xsavec'/>
- <feature policy='require' name='xgetbv1'/>
- <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='disable' name='xop'/>
- <feature policy='disable' name='fma4'/>
- <feature policy='disable' name='tbm'/>
+ <feature policy='disable' name='monitor'/>
+ <feature policy='disable' name='sha-ni'/>
</cpu>

View File

@ -1,7 +1,7 @@
Index: libvirt-3.7.0/examples/apparmor/libvirt-lxc
Index: libvirt-3.8.0/examples/apparmor/libvirt-lxc
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/libvirt-lxc
+++ libvirt-3.7.0/examples/apparmor/libvirt-lxc
--- libvirt-3.8.0.orig/examples/apparmor/libvirt-lxc
+++ libvirt-3.8.0/examples/apparmor/libvirt-lxc
@@ -2,39 +2,15 @@
#include <abstractions/base>

View File

@ -1,61 +0,0 @@
commit b482925c2277e906542faea52ef587a5c0aa1f5f
Author: Jim Fehlig <jfehlig@suse.com>
Date: Fri Sep 22 17:02:42 2017 -0600
apparmor: support ptrace checks
Kernel 4.13 introduced finer-grained ptrace checks
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?h=v4.13.2&id=290f458a4f16f9cf6cb6562b249e69fe1c3c3a07
With kernel 4.13 and apparmor 2.11, simply starting libvirtd
results in the following apparmor denial
type=AVC msg=audit(1506112085.645:954): apparmor="DENIED"
operation="ptrace" profile="/usr/sbin/libvirtd" pid=6984
comm="libvirtd" requested_mask="trace" denied_mask="trace"
peer="unconfined"
Attempting to start an unconfined domain results in
type=AVC msg=audit(1506112301.227:1112): apparmor="DENIED"
operation="ptrace" profile="/usr/sbin/libvirtd" pid=7498
comm="libvirtd" requested_mask="trace" denied_mask="trace"
peer="/usr/sbin/libvirtd"
And attempting to start a confined domain results in
type=AVC msg=audit(1506112631.408:1312): apparmor="DENIED"
operation="open" profile="virt-aa-helper" name="/etc/libnl/classid"
pid=8283 comm="virt-aa-helper" requested_mask="r" denied_mask="r"
fsuid=0 ouid=0
type=AVC msg=audit(1506112631.530:1319): apparmor="DENIED"
operation="open" profile="virt-aa-helper" name="/etc/libnl/classid"
pid=8289 comm="virt-aa-helper" requested_mask="r" denied_mask="r"
fsuid=0 ouid=0
type=AVC msg=audit(1506112632.186:1324): apparmor="DENIED"
operation="ptrace" profile="/usr/sbin/libvirtd" pid=8342
comm="libvirtd" requested_mask="trace" denied_mask="trace"
peer="libvirt-66154842-e926-4f92-92f0-1c1bf61dd1ff"
Add ptrace rules to allow the trace operations.
Resolves: https://bugzilla.suse.com/show_bug.cgi?id=1058847
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Guido Günther <agx@sigxcpu.org>
Index: libvirt-3.7.0/examples/apparmor/usr.sbin.libvirtd
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/usr.sbin.libvirtd
+++ libvirt-3.7.0/examples/apparmor/usr.sbin.libvirtd
@@ -37,6 +37,10 @@
network packet dgram,
network packet raw,
+ ptrace (trace) peer=unconfined,
+ ptrace (trace) peer=/usr/sbin/libvirtd,
+ ptrace (trace) peer=libvirt-*,
+
# Very lenient profile for libvirtd since we want to first focus on confining
# the guests. Guests will have a very restricted profile.
/ r,

View File

@ -11,11 +11,11 @@ Signed-off-by: Chunyan Liu <cyliu@suse.com>
src/qemu/qemu_driver.c | 7 +++++++
1 file changed, 7 insertions(+)
Index: libvirt-3.7.0/src/qemu/qemu_driver.c
Index: libvirt-3.8.0/src/qemu/qemu_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/qemu/qemu_driver.c
+++ libvirt-3.7.0/src/qemu/qemu_driver.c
@@ -16976,6 +16976,14 @@ qemuDomainBlockCopyCommon(virDomainObjPt
--- libvirt-3.8.0.orig/src/qemu/qemu_driver.c
+++ libvirt-3.8.0/src/qemu/qemu_driver.c
@@ -17046,6 +17046,14 @@ qemuDomainBlockCopyCommon(virDomainObjPt
goto endjob;
}

View File

@ -0,0 +1,60 @@
commit c44b29aacb6a3f445ab06d61899a0308b9d6d0d3
Author: Jim Fehlig <jfehlig@suse.com>
Date: Fri Oct 6 14:20:36 2017 -0600
apparmor: add dnsmasq ptrace rule to libvirtd profile
Commit b482925c added ptrace rule for the apparmor profiles,
but one was missed in the libvirtd profile for dnsmasq. It was
overlooked since the test machine did not have an active libvirt
network requiring dnsmasq that was also set to autostart. With
one active and set to autostart, the following denial is observed
in audit.log when restarting libvirtd
type=AVC msg=audit(1507320136.306:298): apparmor="DENIED" \
operation="ptrace" profile="/usr/sbin/libvirtd" pid=5472 \
comm="libvirtd" requested_mask="trace" denied_mask="trace" \
peer="/usr/sbin/dnsmasq"
With an active network, I suspect a libvirtd restart causes access
to /proc/<dnsmasq-pid>/*, hence the resulting denial. As a nasty
side affect of the denial, libvirtd thinks it needs to spawn a
dnsmasq process even though one is already running for the network.
E.g. after two libvirtd restarts
dnsmasq 1683 0.0 0.0 51188 2612 ? S 12:03 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
root 1684 0.0 0.0 51160 576 ? S 12:03 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
dnsmasq 4706 0.0 0.0 51188 2572 ? S 13:54 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
root 4707 0.0 0.0 51160 572 ? S 13:54 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
dnsmasq 4791 0.0 0.0 51188 2580 ? S 13:56 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
root 4792 0.0 0.0 51160 572 ? S 13:56 0:00 \
/usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf \
--leasefile-ro --dhcp-script=/usr/lib64/libvirt/libvirt_leaseshelper
A simple fix is to add a ptrace rule for dnsmasq.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-By: Guido Günther <agx@sigxcpu.org>
Index: libvirt-3.8.0/examples/apparmor/usr.sbin.libvirtd
===================================================================
--- libvirt-3.8.0.orig/examples/apparmor/usr.sbin.libvirtd
+++ libvirt-3.8.0/examples/apparmor/usr.sbin.libvirtd
@@ -39,6 +39,7 @@
ptrace (trace) peer=unconfined,
ptrace (trace) peer=/usr/sbin/libvirtd,
+ ptrace (trace) peer=/usr/sbin/dnsmasq,
ptrace (trace) peer=libvirt-*,
# Very lenient profile for libvirtd since we want to first focus on confining

View File

@ -1,39 +0,0 @@
commit f305d8a191941d1ea6e036ae9fc02a3164b3e746
Author: Guido Günther <agx@sigxcpu.org>
Date: Fri Sep 15 17:13:16 2017 +0200
apparmor: add attach_disconnected
Otherwise we fail to reconnect to /dev/net/tun opened by libvirtd
like
[ 8144.507756] audit: type=1400 audit(1505488162.386:38069121): apparmor="DENIED" operation="file_perm" info="Failed name lookup - disconnected path" error=-13 profile="libvirt-5dfcc8a7-b79a-4fa9-a41f-f6271651934c" name="dev/net/tun" pid=9607 comm="qemu-system-x86" requested_mask="r" denied_mask="r" fsuid=117 ouid=0
Reviewed-By: Jamie Strandboge <jamie@canonical.com>
Acked-By: Michal Privoznik <mprivozn@redhat.com>
Index: libvirt-3.7.0/examples/apparmor/TEMPLATE.lxc
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/TEMPLATE.lxc
+++ libvirt-3.7.0/examples/apparmor/TEMPLATE.lxc
@@ -4,7 +4,7 @@
#include <tunables/global>
-profile LIBVIRT_TEMPLATE {
+profile LIBVIRT_TEMPLATE flags=(attach_disconnected) {
#include <abstractions/libvirt-lxc>
# Globally allows everything to run under this profile
Index: libvirt-3.7.0/examples/apparmor/TEMPLATE.qemu
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/TEMPLATE.qemu
+++ libvirt-3.7.0/examples/apparmor/TEMPLATE.qemu
@@ -4,6 +4,6 @@
#include <tunables/global>
-profile LIBVIRT_TEMPLATE {
+profile LIBVIRT_TEMPLATE flags=(attach_disconnected) {
#include <abstractions/libvirt-qemu>
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e7bcb209eeef99f026484293abc733e30ed06dabcdde62c4c3e95f71b2b67ba
size 14803752

View File

@ -1,10 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJZrSOIAAoJEBVYiyZZa+pd/9IH/1bGgu6+j2Q86NNQQ/rEsmL6
1lR2hvZCNxKEVSNshJfWQvSY2UT87HKYJPMbVdRJx6j/vc48bG8lZvt128wRMjji
sjJ/eDP0oLi48ZnICYx+KNcmLJVYjadueCqYclUIUrHhUsNzGZin3bmLN7vPLEP/
BeRmexJqfTSKftxHY1/ZMEJmTkHP7xBRJ56C2wascBjqtbw6UT0L97bn+rtm659Q
278zDS8vwalwef5CnTm89Pp7d2oBHtD52XE+jJtpv1mC1zwvKCpPhfgVj1U3+mPR
js3D0avcBQ9lApvAl6ByAJvXDaGb3T9MpM4K0UYr5j5p3h3/ffL3i/0+4ez46cc=
=DNDB
-----END PGP SIGNATURE-----

3
libvirt-3.8.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:73eba834089ed0ce74e3183a7f12cf0c6f7de08e9a700b5456c62fb124f903f9
size 14868712

10
libvirt-3.8.0.tar.xz.asc Normal file
View File

@ -0,0 +1,10 @@
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJZ1JrdAAoJEBVYiyZZa+pdmBcIAMQQTuvHXX0T4A5CJrgyj4c+
iiYyOubSk5v4QGrbIcVtEt4TF1CyYTB65EM5ZCuB47KeiVzbkSl+6a3AQshWmn2V
7rLjXwJpM64xNc+ErEN+JrXD2ADA0lSZ50J4Eq7bE5GLxVSOuRn4QicAs5kG7bSn
h+AE3iRg45ImmE7wLC9Blu0ecQrR5yi4ensdYegLzbAumhZqrlDhWGZ9KfS7UDlE
ZN+PQipLhzv9fbRaZzRFbn194SBZQbMEcwkdrgLiXZ91U7/KjvcnnFPrVNh/xe6x
P/07JdTRBh/mwSFjEtGaYDBU9+sy8My1lRZL16YRqRIYX3OIuuXZyMiJj8+oGgE=
=2t5y
-----END PGP SIGNATURE-----

View File

@ -2,11 +2,11 @@ Add POWER8 v2.0 and v2.1 to cpu map XML
From: <ro@suse.de>
Index: libvirt-3.7.0/src/cpu/cpu_map.xml
Index: libvirt-3.8.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
@@ -1643,6 +1643,8 @@
--- libvirt-3.8.0.orig/src/cpu/cpu_map.xml
+++ libvirt-3.8.0/src/cpu/cpu_map.xml
@@ -1724,6 +1724,8 @@
<pvr value='0x004b0000' mask='0xffff0000'/>
<pvr value='0x004c0000' mask='0xffff0000'/>
<pvr value='0x004d0000' mask='0xffff0000'/>

View File

@ -1,7 +1,7 @@
Index: libvirt-3.7.0/configure.ac
Index: libvirt-3.8.0/configure.ac
===================================================================
--- libvirt-3.7.0.orig/configure.ac
+++ libvirt-3.7.0/configure.ac
--- libvirt-3.8.0.orig/configure.ac
+++ libvirt-3.8.0/configure.ac
@@ -256,6 +256,7 @@ LIBVIRT_ARG_LIBSSH
LIBVIRT_ARG_LIBXML
LIBVIRT_ARG_MACVTAP
@ -18,7 +18,7 @@ Index: libvirt-3.7.0/configure.ac
LIBVIRT_CHECK_NUMACTL
LIBVIRT_CHECK_NWFILTER
LIBVIRT_CHECK_OPENWSMAN
@@ -979,6 +981,7 @@ LIBVIRT_RESULT_LIBXL
@@ -993,6 +995,7 @@ LIBVIRT_RESULT_LIBXL
LIBVIRT_RESULT_LIBXML
LIBVIRT_RESULT_MACVTAP
LIBVIRT_RESULT_NETCF
@ -26,10 +26,10 @@ Index: libvirt-3.7.0/configure.ac
LIBVIRT_RESULT_NSS
LIBVIRT_RESULT_NUMACTL
LIBVIRT_RESULT_OPENWSMAN
Index: libvirt-3.7.0/src/Makefile.am
Index: libvirt-3.8.0/src/Makefile.am
===================================================================
--- libvirt-3.7.0.orig/src/Makefile.am
+++ libvirt-3.7.0/src/Makefile.am
--- libvirt-3.8.0.orig/src/Makefile.am
+++ libvirt-3.8.0/src/Makefile.am
@@ -1037,6 +1037,10 @@ if WITH_NETCF
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_netcf.c
@ -52,10 +52,10 @@ Index: libvirt-3.7.0/src/Makefile.am
if WITH_UDEV
libvirt_driver_interface_la_CFLAGS += $(UDEV_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(UDEV_LIBS)
Index: libvirt-3.7.0/tools/virsh.c
Index: libvirt-3.8.0/tools/virsh.c
===================================================================
--- libvirt-3.7.0.orig/tools/virsh.c
+++ libvirt-3.7.0/tools/virsh.c
--- libvirt-3.8.0.orig/tools/virsh.c
+++ libvirt-3.8.0/tools/virsh.c
@@ -576,6 +576,8 @@ virshShowVersion(vshControl *ctl ATTRIBU
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
@ -65,10 +65,10 @@ Index: libvirt-3.7.0/tools/virsh.c
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
Index: libvirt-3.7.0/src/interface/interface_backend_netcf.c
Index: libvirt-3.8.0/src/interface/interface_backend_netcf.c
===================================================================
--- libvirt-3.7.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-3.7.0/src/interface/interface_backend_netcf.c
--- libvirt-3.8.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-3.8.0/src/interface/interface_backend_netcf.c
@@ -23,7 +23,12 @@
#include <config.h>
@ -152,10 +152,10 @@ Index: libvirt-3.7.0/src/interface/interface_backend_netcf.c
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
return -1;
if (virRegisterStateDriver(&interfaceStateDriver) < 0)
Index: libvirt-3.7.0/src/interface/interface_driver.c
Index: libvirt-3.8.0/src/interface/interface_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/interface/interface_driver.c
+++ libvirt-3.7.0/src/interface/interface_driver.c
--- libvirt-3.8.0.orig/src/interface/interface_driver.c
+++ libvirt-3.8.0/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@ -173,10 +173,10 @@ Index: libvirt-3.7.0/src/interface/interface_driver.c
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
Index: libvirt-3.7.0/m4/virt-netcontrol.m4
Index: libvirt-3.8.0/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
+++ libvirt-3.7.0/m4/virt-netcontrol.m4
+++ libvirt-3.8.0/m4/virt-netcontrol.m4
@@ -0,0 +1,39 @@
+dnl The libnetcontrol library
+dnl

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Fri Oct 6 22:46:12 UTC 2017 - jfehlig@suse.com
- apparmor: add dnsmasq ptrace rule to libvirtd profile
c44b29aa-apparmor-dnsmasq-ptrace.patch
bsc#1060860
-------------------------------------------------------------------
Thu Oct 5 15:19:24 UTC 2017 - jfehlig@suse.com
- spec: Add dependency to UEFI firmwares since paths are specified
at build time
-------------------------------------------------------------------
Wed Oct 4 14:40:18 UTC 2017 - jfehlig@suse.com
- Update to libvirt 3.8.0
- Many incremental improvements and bug fixes, see
http://libvirt.org/news.html
- Dropped patches:
92bd87a2-ryzen-test-data.patch,
5c83b360-epyc-test-data.patch,
a0b62843-epyc-cpu-model.patch,
f305d8a1-apparmor-attach_disconnected.patch,
b482925c-apparmor-ptrace-support.patch
-------------------------------------------------------------------
Tue Oct 3 23:37:12 UTC 2017 - jfehlig@suse.com
- Enable firewalld support for openSUSE >= 42.2
-------------------------------------------------------------------
Tue Sep 26 22:38:42 UTC 2017 - jfehlig@suse.com

View File

@ -103,6 +103,11 @@
%define with_phyp 1
%endif
# Enable firewalld support for openSUSE >= 42.2
%if 0%{?sle_version} >= 120200 && 0%{?is_opensuse}
%define with_firewalld 1
%endif
# rbd enablement is a bit tricky. For x86_64
%ifarch x86_64
# enable on anything newer than 1320, or SLE12 family newer than 120100
@ -165,7 +170,7 @@
Name: libvirt
Url: http://libvirt.org/
Version: 3.7.0
Version: 3.8.0
Release: 0
Summary: Library providing a simple virtualization API
License: LGPL-2.1+
@ -304,11 +309,7 @@ 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
Patch3: f305d8a1-apparmor-attach_disconnected.patch
Patch4: b482925c-apparmor-ptrace-support.patch
Patch0: c44b29aa-apparmor-dnsmasq-ptrace.patch
# Patches pending upstream review
Patch100: libxl-dom-reset.patch
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
@ -366,7 +367,6 @@ Group: Development/Libraries/C and C++
# All runtime requirements for the libvirt package (runtime requirements
# for subpackages are listed later in those subpackages)
# The client side, i.e. shared libs are in a subpackage
Requires: %{name}-libs = %{version}-%{release}
# for modprobe of pci devices
@ -386,6 +386,15 @@ Requires: dmidecode
Requires: numad
%endif
# libvirt is configured with paths to UEFI firmwares in %build,
# hence add a dependency to the firmware packages
%ifarch x86_64
Requires: qemu-ovmf-x86_64
%endif
%ifarch aarch64
Requires: qemu-uefi-aarch64
%endif
%description daemon
Server side daemon required to manage the virtualization capabilities
of recent versions of Linux. Requires a hypervisor specific sub-RPM
@ -875,10 +884,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch100 -p1
%patch101 -p1
%patch150 -p1

View File

@ -8,10 +8,10 @@ Date: Mon Jun 23 15:51:20 2014 -0600
option, but domainReset can be implemented in the libxl driver by
forcibly destroying the domain and starting it again.
Index: libvirt-3.7.0/src/libxl/libxl_driver.c
Index: libvirt-3.8.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_driver.c
+++ libvirt-3.7.0/src/libxl/libxl_driver.c
--- libvirt-3.8.0.orig/src/libxl/libxl_driver.c
+++ libvirt-3.8.0/src/libxl/libxl_driver.c
@@ -1381,6 +1381,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
}
@ -74,7 +74,7 @@ Index: libvirt-3.7.0/src/libxl/libxl_driver.c
libxlDomainDestroyFlags(virDomainPtr dom,
unsigned int flags)
{
@@ -6487,6 +6542,7 @@ static virHypervisorDriver libxlHypervis
@@ -6503,6 +6558,7 @@ static virHypervisorDriver libxlHypervis
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
.domainReboot = libxlDomainReboot, /* 0.9.0 */

View File

@ -8,10 +8,10 @@ as the default <emulator>, instead of the qemu-xen one.
See FATE#320638 for details.
Index: libvirt-3.7.0/src/libxl/libxl_capabilities.c
Index: libvirt-3.8.0/src/libxl/libxl_capabilities.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_capabilities.c
+++ libvirt-3.7.0/src/libxl/libxl_capabilities.c
--- libvirt-3.8.0.orig/src/libxl/libxl_capabilities.c
+++ libvirt-3.8.0/src/libxl/libxl_capabilities.c
@@ -38,6 +38,7 @@
#include "libxl_capabilities.h"
#include "cpu/cpu_x86.h"

View File

@ -3,10 +3,10 @@ https://bugzilla.novell.com/show_bug.cgi?id=879425
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
Index: libvirt-3.7.0/src/libxl/libxl_conf.c
Index: libvirt-3.8.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_conf.c
+++ libvirt-3.7.0/src/libxl/libxl_conf.c
--- libvirt-3.8.0.orig/src/libxl/libxl_conf.c
+++ libvirt-3.8.0/src/libxl/libxl_conf.c
@@ -646,6 +646,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@ -38,7 +38,7 @@ Index: libvirt-3.7.0/src/libxl/libxl_conf.c
static char *
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
const char *username,
@@ -893,6 +917,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -894,6 +918,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
return -1;

View File

@ -16,10 +16,10 @@ Signed-off-by: Jim Fehlig <jfehlig@suse.com>
tools/virsh.pod | 8 ++++++++
6 files changed, 125 insertions(+), 6 deletions(-)
Index: libvirt-3.7.0/include/libvirt/libvirt-domain.h
Index: libvirt-3.8.0/include/libvirt/libvirt-domain.h
===================================================================
--- libvirt-3.7.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-3.7.0/include/libvirt/libvirt-domain.h
--- libvirt-3.8.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-3.8.0/include/libvirt/libvirt-domain.h
@@ -1008,6 +1008,31 @@ typedef enum {
*/
# define VIR_MIGRATE_PARAM_AUTO_CONVERGE_INCREMENT "auto_converge.increment"
@ -52,10 +52,10 @@ Index: libvirt-3.7.0/include/libvirt/libvirt-domain.h
/* Domain migration. */
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
unsigned long flags, const char *dname,
Index: libvirt-3.7.0/src/libxl/libxl_driver.c
Index: libvirt-3.8.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_driver.c
+++ libvirt-3.7.0/src/libxl/libxl_driver.c
--- libvirt-3.8.0.orig/src/libxl/libxl_driver.c
+++ libvirt-3.8.0/src/libxl/libxl_driver.c
@@ -6105,6 +6105,9 @@ libxlDomainMigratePerform3Params(virDoma
const char *dname = NULL;
const char *uri = NULL;
@ -99,10 +99,10 @@ Index: libvirt-3.7.0/src/libxl/libxl_driver.c
goto cleanup;
}
Index: libvirt-3.7.0/src/libxl/libxl_migration.c
Index: libvirt-3.8.0/src/libxl/libxl_migration.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_migration.c
+++ libvirt-3.7.0/src/libxl/libxl_migration.c
--- libvirt-3.8.0.orig/src/libxl/libxl_migration.c
+++ libvirt-3.8.0/src/libxl/libxl_migration.c
@@ -359,18 +359,39 @@ libxlMigrateReceive(virNetSocketPtr sock
static int
libxlDoMigrateSend(libxlDriverPrivatePtr driver,
@ -263,10 +263,10 @@ Index: libvirt-3.7.0/src/libxl/libxl_migration.c
virObjectLock(vm);
cleanup:
Index: libvirt-3.7.0/src/libxl/libxl_migration.h
Index: libvirt-3.8.0/src/libxl/libxl_migration.h
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_migration.h
+++ libvirt-3.7.0/src/libxl/libxl_migration.h
--- libvirt-3.8.0.orig/src/libxl/libxl_migration.h
+++ libvirt-3.8.0/src/libxl/libxl_migration.h
@@ -39,6 +39,10 @@
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
@ -311,10 +311,10 @@ Index: libvirt-3.7.0/src/libxl/libxl_migration.h
virDomainPtr
libxlDomainMigrationFinish(virConnectPtr dconn,
Index: libvirt-3.7.0/tools/virsh-domain.c
Index: libvirt-3.8.0/tools/virsh-domain.c
===================================================================
--- libvirt-3.7.0.orig/tools/virsh-domain.c
+++ libvirt-3.7.0/tools/virsh-domain.c
--- libvirt-3.8.0.orig/tools/virsh-domain.c
+++ libvirt-3.8.0/tools/virsh-domain.c
@@ -10432,6 +10432,22 @@ static const vshCmdOptDef opts_migrate[]
.type = VSH_OT_BOOL,
.help = N_("use TLS for migration")
@ -374,11 +374,11 @@ Index: libvirt-3.7.0/tools/virsh-domain.c
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
goto out;
if (opt) {
Index: libvirt-3.7.0/tools/virsh.pod
Index: libvirt-3.8.0/tools/virsh.pod
===================================================================
--- libvirt-3.7.0.orig/tools/virsh.pod
+++ libvirt-3.7.0/tools/virsh.pod
@@ -1810,6 +1810,14 @@ Providing I<--tls> causes the migration
--- libvirt-3.8.0.orig/tools/virsh.pod
+++ libvirt-3.8.0/tools/virsh.pod
@@ -1840,6 +1840,14 @@ Providing I<--tls> causes the migration
the migration of the domain. Usage requires proper TLS setup for both source
and target.

View File

@ -7,10 +7,10 @@ and npiv.
For more details, see bsc#954872 and FATE#319810
Index: libvirt-3.7.0/src/libxl/libxl_conf.c
Index: libvirt-3.8.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-3.7.0.orig/src/libxl/libxl_conf.c
+++ libvirt-3.7.0/src/libxl/libxl_conf.c
--- libvirt-3.8.0.orig/src/libxl/libxl_conf.c
+++ libvirt-3.8.0/src/libxl/libxl_conf.c
@@ -646,6 +646,25 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@ -37,7 +37,7 @@ Index: libvirt-3.7.0/src/libxl/libxl_conf.c
static void
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
{
@@ -790,6 +809,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
@@ -791,6 +810,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
int
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
{
@ -45,7 +45,7 @@ Index: libvirt-3.7.0/src/libxl/libxl_conf.c
const char *driver = virDomainDiskGetDriver(l_disk);
int format = virDomainDiskGetFormat(l_disk);
int actual_type = virStorageSourceGetActualType(l_disk->src);
@@ -805,7 +825,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -806,7 +826,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
return -1;
} else {
@ -54,7 +54,7 @@ Index: libvirt-3.7.0/src/libxl/libxl_conf.c
return -1;
}
@@ -918,6 +938,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -919,6 +939,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
return -1;
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);

View File

@ -13,10 +13,10 @@ device with the same name that is being created.
src/lxc/lxc_process.c | 1 +
3 files changed, 4 insertions(+)
Index: libvirt-3.7.0/src/lxc/lxc_controller.c
Index: libvirt-3.8.0/src/lxc/lxc_controller.c
===================================================================
--- libvirt-3.7.0.orig/src/lxc/lxc_controller.c
+++ libvirt-3.7.0/src/lxc/lxc_controller.c
--- libvirt-3.8.0.orig/src/lxc/lxc_controller.c
+++ libvirt-3.8.0/src/lxc/lxc_controller.c
@@ -73,6 +73,7 @@
#include "rpc/virnetdaemon.h"
#include "virstring.h"
@ -33,10 +33,10 @@ Index: libvirt-3.7.0/src/lxc/lxc_controller.c
return ret;
}
Index: libvirt-3.7.0/src/lxc/lxc_driver.c
Index: libvirt-3.8.0/src/lxc/lxc_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/lxc/lxc_driver.c
+++ libvirt-3.7.0/src/lxc/lxc_driver.c
--- libvirt-3.8.0.orig/src/lxc/lxc_driver.c
+++ libvirt-3.8.0/src/lxc/lxc_driver.c
@@ -76,6 +76,7 @@
#include "virtime.h"
#include "virtypedparam.h"
@ -45,7 +45,7 @@ Index: libvirt-3.7.0/src/lxc/lxc_driver.c
#include "virstring.h"
#include "viraccessapicheck.h"
#include "viraccessapichecklxc.h"
@@ -4023,6 +4024,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
@@ -4021,6 +4022,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
case VIR_DOMAIN_NET_TYPE_NETWORK:
case VIR_DOMAIN_NET_TYPE_ETHERNET:
ignore_value(virNetDevVethDelete(veth));
@ -53,7 +53,7 @@ Index: libvirt-3.7.0/src/lxc/lxc_driver.c
break;
case VIR_DOMAIN_NET_TYPE_DIRECT:
@@ -4457,6 +4459,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
@@ -4455,6 +4457,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
virDomainAuditNet(vm, detach, NULL, "detach", false);
goto cleanup;
}
@ -61,10 +61,10 @@ Index: libvirt-3.7.0/src/lxc/lxc_driver.c
break;
/* It'd be nice to support this, but with macvlan
Index: libvirt-3.7.0/src/lxc/lxc_process.c
Index: libvirt-3.8.0/src/lxc/lxc_process.c
===================================================================
--- libvirt-3.7.0.orig/src/lxc/lxc_process.c
+++ libvirt-3.7.0/src/lxc/lxc_process.c
--- libvirt-3.8.0.orig/src/lxc/lxc_process.c
+++ libvirt-3.8.0/src/lxc/lxc_process.c
@@ -52,6 +52,7 @@
#include "viratomic.h"
#include "virprocess.h"

View File

@ -17,10 +17,10 @@ Signed-off-by: Martin Wilck <mwilck@suse.com>
tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 -
2 files changed, 8 insertions(+), 2 deletions(-)
Index: libvirt-3.7.0/src/network/bridge_driver.c
Index: libvirt-3.8.0/src/network/bridge_driver.c
===================================================================
--- libvirt-3.7.0.orig/src/network/bridge_driver.c
+++ libvirt-3.7.0/src/network/bridge_driver.c
--- libvirt-3.8.0.orig/src/network/bridge_driver.c
+++ libvirt-3.8.0/src/network/bridge_driver.c
@@ -1393,7 +1393,14 @@ networkDnsmasqConfContents(virNetworkObj
if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
if (ipdef->nranges || ipdef->nhosts) {
@ -37,10 +37,10 @@ Index: libvirt-3.7.0/src/network/bridge_driver.c
}
if (ipdef->tftproot) {
Index: libvirt-3.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
Index: libvirt-3.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
===================================================================
--- libvirt-3.7.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-3.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
--- libvirt-3.8.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-3.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
@@ -10,7 +10,6 @@ bind-dynamic
interface=virbr1
dhcp-range=192.168.122.1,static

View File

@ -2,10 +2,10 @@ Canonicalize hostarch name ppc64le to ppc64
See bnc#894956
Index: libvirt-3.7.0/src/util/virarch.c
Index: libvirt-3.8.0/src/util/virarch.c
===================================================================
--- libvirt-3.7.0.orig/src/util/virarch.c
+++ libvirt-3.7.0/src/util/virarch.c
--- libvirt-3.8.0.orig/src/util/virarch.c
+++ libvirt-3.8.0/src/util/virarch.c
@@ -169,6 +169,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_I686;
} else if (STREQ(ut.machine, "amd64")) {

View File

@ -1,7 +1,7 @@
Index: libvirt-3.7.0/examples/apparmor/libvirt-qemu
Index: libvirt-3.8.0/examples/apparmor/libvirt-qemu
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/libvirt-qemu
+++ libvirt-3.7.0/examples/apparmor/libvirt-qemu
--- libvirt-3.8.0.orig/examples/apparmor/libvirt-qemu
+++ libvirt-3.8.0/examples/apparmor/libvirt-qemu
@@ -176,3 +176,6 @@
/sys/devices/system/node/ r,
/sys/devices/system/node/node[0-9]*/meminfo r,

View File

@ -8,10 +8,10 @@ Subject: [PATCH] support managed pci devices in xen driver
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
Index: libvirt-3.7.0/src/xenconfig/xen_common.c
Index: libvirt-3.8.0/src/xenconfig/xen_common.c
===================================================================
--- libvirt-3.7.0.orig/src/xenconfig/xen_common.c
+++ libvirt-3.7.0/src/xenconfig/xen_common.c
--- libvirt-3.8.0.orig/src/xenconfig/xen_common.c
+++ libvirt-3.8.0/src/xenconfig/xen_common.c
@@ -394,6 +394,8 @@ xenParsePCI(virConfPtr conf, virDomainDe
{
virConfValuePtr list = virConfGetValue(conf, "pci");
@ -66,10 +66,10 @@ Index: libvirt-3.7.0/src/xenconfig/xen_common.c
hostdev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
hostdev->source.subsys.u.pci.addr.domain = domainID;
hostdev->source.subsys.u.pci.addr.bus = busID;
Index: libvirt-3.7.0/src/xenconfig/xen_sxpr.c
Index: libvirt-3.8.0/src/xenconfig/xen_sxpr.c
===================================================================
--- libvirt-3.7.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.7.0/src/xenconfig/xen_sxpr.c
--- libvirt-3.8.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.8.0/src/xenconfig/xen_sxpr.c
@@ -1062,6 +1062,7 @@ xenParseSxprPCI(virDomainDefPtr def,
int busID;
int slotID;

View File

@ -8,10 +8,10 @@ It was also noticed that the per-domain profiles need a libnl rule
to squelch a denial when starting confined domains.
Found while investigating bsc#1058847
Index: libvirt-3.7.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
Index: libvirt-3.8.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ libvirt-3.7.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
--- libvirt-3.8.0.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ libvirt-3.8.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
@@ -16,7 +16,7 @@ profile virt-aa-helper /usr/{lib,lib64}/
owner @{PROC}/[0-9]*/status r,
@{PROC}/filesystems r,
@ -21,10 +21,10 @@ Index: libvirt-3.7.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
# for hostdev
/sys/devices/ r,
Index: libvirt-3.7.0/examples/apparmor/libvirt-qemu
Index: libvirt-3.8.0/examples/apparmor/libvirt-qemu
===================================================================
--- libvirt-3.7.0.orig/examples/apparmor/libvirt-qemu
+++ libvirt-3.7.0/examples/apparmor/libvirt-qemu
--- libvirt-3.8.0.orig/examples/apparmor/libvirt-qemu
+++ libvirt-3.8.0/examples/apparmor/libvirt-qemu
@@ -50,6 +50,7 @@
#/dev/fb* rw,

View File

@ -1,9 +1,9 @@
Adjust libvirt-guests service to conform to SUSE standards
Index: libvirt-3.7.0/tools/libvirt-guests.init.in
Index: libvirt-3.8.0/tools/libvirt-guests.init.in
===================================================================
--- libvirt-3.7.0.orig/tools/libvirt-guests.init.in
+++ libvirt-3.7.0/tools/libvirt-guests.init.in
--- libvirt-3.8.0.orig/tools/libvirt-guests.init.in
+++ libvirt-3.8.0/tools/libvirt-guests.init.in
@@ -4,27 +4,27 @@
# http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/initscrcomconv.html
#
@ -45,10 +45,10 @@ Index: libvirt-3.7.0/tools/libvirt-guests.init.in
#
exec @libexecdir@/libvirt-guests.sh "$@"
Index: libvirt-3.7.0/tools/libvirt-guests.sh.in
Index: libvirt-3.8.0/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-3.7.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-3.7.0/tools/libvirt-guests.sh.in
--- libvirt-3.8.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-3.8.0/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
@ -208,10 +208,10 @@ Index: libvirt-3.7.0/tools/libvirt-guests.sh.in
esac
-exit $RETVAL
+rc_exit
Index: libvirt-3.7.0/tools/libvirt-guests.sysconf
Index: libvirt-3.8.0/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-3.7.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-3.7.0/tools/libvirt-guests.sysconf
--- libvirt-3.8.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-3.8.0/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+

View File

@ -3,10 +3,10 @@ Disable TLS by default
On SUSE distros, the default is for libvirtd to listen only on the
Unix Domain Socket. The libvirt client still provides remote access
via a SSH tunnel.
Index: libvirt-3.7.0/daemon/libvirtd.conf
Index: libvirt-3.8.0/daemon/libvirtd.conf
===================================================================
--- libvirt-3.7.0.orig/daemon/libvirtd.conf
+++ libvirt-3.7.0/daemon/libvirtd.conf
--- libvirt-3.8.0.orig/daemon/libvirtd.conf
+++ libvirt-3.8.0/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
@ -18,10 +18,10 @@ Index: libvirt-3.7.0/daemon/libvirtd.conf
# Listen for unencrypted TCP connections on the public TCP/IP port.
# NB, must pass the --listen flag to the libvirtd process for this to
Index: libvirt-3.7.0/daemon/libvirtd-config.c
Index: libvirt-3.8.0/daemon/libvirtd-config.c
===================================================================
--- libvirt-3.7.0.orig/daemon/libvirtd-config.c
+++ libvirt-3.7.0/daemon/libvirtd-config.c
--- libvirt-3.8.0.orig/daemon/libvirtd-config.c
+++ libvirt-3.8.0/daemon/libvirtd-config.c
@@ -110,7 +110,7 @@ daemonConfigNew(bool privileged ATTRIBUT
if (VIR_ALLOC(data) < 0)
return NULL;
@ -31,10 +31,10 @@ Index: libvirt-3.7.0/daemon/libvirtd-config.c
data->listen_tcp = 0;
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
Index: libvirt-3.7.0/daemon/test_libvirtd.aug.in
Index: libvirt-3.8.0/daemon/test_libvirtd.aug.in
===================================================================
--- libvirt-3.7.0.orig/daemon/test_libvirtd.aug.in
+++ libvirt-3.7.0/daemon/test_libvirtd.aug.in
--- libvirt-3.8.0.orig/daemon/test_libvirtd.aug.in
+++ libvirt-3.8.0/daemon/test_libvirtd.aug.in
@@ -2,7 +2,7 @@ module Test_libvirtd =
::CONFIG::

View File

@ -7,10 +7,10 @@ On SUSE distros, we promote libvirt and all the libvirt-based
tools. If a user installs libvirt on their SUSE Xen host, then
libvirt should be king and override xendomains. See bsc#1015348
Index: libvirt-3.7.0/daemon/libvirtd.service.in
Index: libvirt-3.8.0/daemon/libvirtd.service.in
===================================================================
--- libvirt-3.7.0.orig/daemon/libvirtd.service.in
+++ libvirt-3.7.0/daemon/libvirtd.service.in
--- libvirt-3.8.0.orig/daemon/libvirtd.service.in
+++ libvirt-3.8.0/daemon/libvirtd.service.in
@@ -14,6 +14,8 @@ After=iscsid.service
After=apparmor.service
After=local-fs.target

View File

@ -1,9 +1,9 @@
Adjust libvirtd sysconfig file to conform to SUSE standards
Index: libvirt-3.7.0/daemon/libvirtd.sysconf
Index: libvirt-3.8.0/daemon/libvirtd.sysconf
===================================================================
--- libvirt-3.7.0.orig/daemon/libvirtd.sysconf
+++ libvirt-3.7.0/daemon/libvirtd.sysconf
--- libvirt-3.8.0.orig/daemon/libvirtd.sysconf
+++ libvirt-3.8.0/daemon/libvirtd.sysconf
@@ -1,16 +1,25 @@
+## Path: System/Virtualization/libvirt
+

View File

@ -1,10 +1,10 @@
Adjust paths of OVMF firmwares on SUSE distros
Index: libvirt-3.7.0/src/qemu/qemu.conf
Index: libvirt-3.8.0/src/qemu/qemu.conf
===================================================================
--- libvirt-3.7.0.orig/src/qemu/qemu.conf
+++ libvirt-3.7.0/src/qemu/qemu.conf
@@ -703,10 +703,9 @@ security_default_confined = 0
--- libvirt-3.8.0.orig/src/qemu/qemu.conf
+++ libvirt-3.8.0/src/qemu/qemu.conf
@@ -737,10 +737,9 @@ security_default_confined = 0
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
# follows this scheme.
#nvram = [
@ -18,10 +18,10 @@ Index: libvirt-3.7.0/src/qemu/qemu.conf
#]
# The backend to use for handling stdout/stderr output from
Index: libvirt-3.7.0/src/qemu/qemu_conf.c
Index: libvirt-3.8.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-3.7.0.orig/src/qemu/qemu_conf.c
+++ libvirt-3.7.0/src/qemu/qemu_conf.c
--- libvirt-3.8.0.orig/src/qemu/qemu_conf.c
+++ libvirt-3.8.0/src/qemu/qemu_conf.c
@@ -127,10 +127,9 @@ void qemuDomainCmdlineDefFree(qemuDomain
#ifndef DEFAULT_LOADER_NVRAM

View File

@ -7,11 +7,11 @@ suse-qemu-conf-secdriver.patch, suse-qemu-conf-lockmgr.patch,
etc.), but for now they are all lumped together in this
single patch.
Index: libvirt-3.7.0/src/qemu/qemu.conf
Index: libvirt-3.8.0/src/qemu/qemu.conf
===================================================================
--- libvirt-3.7.0.orig/src/qemu/qemu.conf
+++ libvirt-3.7.0/src/qemu/qemu.conf
@@ -340,11 +340,20 @@
--- libvirt-3.8.0.orig/src/qemu/qemu.conf
+++ libvirt-3.8.0/src/qemu/qemu.conf
@@ -374,11 +374,20 @@
# isolation, but it cannot appear in a list of drivers.
#
#security_driver = "selinux"
@ -34,7 +34,7 @@ Index: libvirt-3.7.0/src/qemu/qemu.conf
# If set to non-zero, then attempts to create unconfined
# guests will be blocked. Defaults to 0.
@@ -588,11 +597,22 @@
@@ -622,11 +631,22 @@
#allow_disk_format_probing = 1

View File

@ -1,9 +1,9 @@
Adjust virtlockd sysconfig file to conform to SUSE standards
Index: libvirt-3.7.0/src/locking/virtlockd.sysconf
Index: libvirt-3.8.0/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-3.7.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-3.7.0/src/locking/virtlockd.sysconf
--- libvirt-3.8.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-3.8.0/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+

View File

@ -1,9 +1,9 @@
Adjust virtlogd sysconfig file to conform to SUSE standards
Index: libvirt-3.7.0/src/logging/virtlogd.sysconf
Index: libvirt-3.8.0/src/logging/virtlogd.sysconf
===================================================================
--- libvirt-3.7.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-3.7.0/src/logging/virtlogd.sysconf
--- libvirt-3.8.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-3.8.0/src/logging/virtlogd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlogd
+

View File

@ -1,7 +1,7 @@
Index: libvirt-3.7.0/src/xenconfig/xen_sxpr.c
Index: libvirt-3.8.0/src/xenconfig/xen_sxpr.c
===================================================================
--- libvirt-3.7.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.7.0/src/xenconfig/xen_sxpr.c
--- libvirt-3.8.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.8.0/src/xenconfig/xen_sxpr.c
@@ -392,7 +392,7 @@ xenParseSxprVifRate(const char *rate, un
static int
xenParseSxprDisks(virDomainDefPtr def,

View File

@ -6,10 +6,10 @@ and 'file'. This was implicitly done prior to commit 9673418c.
https://bugzilla.suse.com/show_bug.cgi?id=938228
Index: libvirt-3.7.0/src/xenconfig/xen_sxpr.c
Index: libvirt-3.8.0/src/xenconfig/xen_sxpr.c
===================================================================
--- libvirt-3.7.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.7.0/src/xenconfig/xen_sxpr.c
--- libvirt-3.8.0.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-3.8.0/src/xenconfig/xen_sxpr.c
@@ -506,10 +506,11 @@ xenParseSxprDisks(virDomainDefPtr def,
omnipotent, we can revisit this, perhaps stat()'ing
the src file in question */