Subject can have 'tests:' prefix, it was a bit unclear otherwise On 6/6/19 6:00 AM, Erik Skultety wrote: > Rather than editing existing Intel domain capabilities by hand, use > capabilities from a real AMD HW. We're later going to use these to fill > in SEV platform specific data automatically. > > Signed-off-by: Erik Skultety <eskultet@xxxxxxxxxx> > --- > .../kvm-x86_64-amd-domcaps-q35.xml | 146 ++++++++++++++++++ > tests/utils.py | 2 + > 2 files changed, 148 insertions(+) > create mode 100644 tests/capabilities-xml/kvm-x86_64-amd-domcaps-q35.xml > > diff --git a/tests/capabilities-xml/kvm-x86_64-amd-domcaps-q35.xml b/tests/capabilities-xml/kvm-x86_64-amd-domcaps-q35.xml The q35 bit is kinda tangential here. Since the reason we are adding this is specifically for sev testing, I'd call it kvm-x86_64-domcaps-amd-sev.xml > new file mode 100644 > index 00000000..c402464b > --- /dev/null > +++ b/tests/capabilities-xml/kvm-x86_64-amd-domcaps-q35.xml > @@ -0,0 +1,146 @@ > +<domainCapabilities> > + <path>/usr/bin/qemu-system-x86_64</path> > + <domain>kvm</domain> > + <machine>pc-q35-3.0</machine> > + <arch>x86_64</arch> > + <vcpu max='288'/> > + <iothreads supported='yes'/> > + <os supported='yes'> > + <loader supported='yes'> > + <value>/usr/share/edk2/ovmf/OVMF_CODE.fd</value> > + <enum name='type'> > + <value>rom</value> > + <value>pflash</value> > + </enum> > + <enum name='readonly'> > + <value>yes</value> > + <value>no</value> > + </enum> > + </loader> > + </os> > + <cpu> > + <mode name='host-passthrough' supported='yes'/> > + <mode name='host-model' supported='yes'> > + <model fallback='forbid'>EPYC-IBPB</model> > + <vendor>AMD</vendor> > + <feature policy='require' name='x2apic'/> > + <feature policy='require' name='tsc-deadline'/> > + <feature policy='require' name='hypervisor'/> > + <feature policy='require' name='tsc_adjust'/> > + <feature policy='require' name='cmp_legacy'/> > + <feature policy='require' name='perfctr_core'/> > + <feature policy='require' name='invtsc'/> > + <feature policy='require' name='virt-ssbd'/> > + <feature policy='disable' name='monitor'/> > + </mode> > + <mode name='custom' supported='yes'> > + <model usable='yes'>qemu64</model> > + <model usable='yes'>qemu32</model> > + <model usable='no'>phenom</model> > + <model usable='yes'>pentium3</model> > + <model usable='yes'>pentium2</model> > + <model usable='yes'>pentium</model> > + <model usable='no'>n270</model> > + <model usable='yes'>kvm64</model> > + <model usable='yes'>kvm32</model> > + <model usable='no'>coreduo</model> > + <model usable='no'>core2duo</model> > + <model usable='no'>athlon</model> > + <model usable='no'>Westmere-IBRS</model> > + <model usable='yes'>Westmere</model> > + <model usable='no'>Skylake-Server-IBRS</model> > + <model usable='no'>Skylake-Server</model> > + <model usable='no'>Skylake-Client-IBRS</model> > + <model usable='no'>Skylake-Client</model> > + <model usable='no'>SandyBridge-IBRS</model> > + <model usable='yes'>SandyBridge</model> > + <model usable='yes'>Penryn</model> > + <model usable='no'>Opteron_G5</model> > + <model usable='no'>Opteron_G4</model> > + <model usable='yes'>Opteron_G3</model> > + <model usable='yes'>Opteron_G2</model> > + <model usable='yes'>Opteron_G1</model> > + <model usable='no'>Nehalem-IBRS</model> > + <model usable='yes'>Nehalem</model> > + <model usable='no'>IvyBridge-IBRS</model> > + <model usable='no'>IvyBridge</model> > + <model usable='no'>Haswell-noTSX-IBRS</model> > + <model usable='no'>Haswell-noTSX</model> > + <model usable='no'>Haswell-IBRS</model> > + <model usable='no'>Haswell</model> > + <model usable='yes'>EPYC-IBPB</model> > + <model usable='yes'>EPYC</model> > + <model usable='yes'>Conroe</model> > + <model usable='no'>Broadwell-noTSX-IBRS</model> > + <model usable='no'>Broadwell-noTSX</model> > + <model usable='no'>Broadwell-IBRS</model> > + <model usable='no'>Broadwell</model> > + <model usable='yes'>486</model> > + </mode> > + </cpu> > + <devices> > + <disk supported='yes'> > + <enum name='diskDevice'> > + <value>disk</value> > + <value>cdrom</value> > + <value>floppy</value> > + <value>lun</value> > + </enum> > + <enum name='bus'> > + <value>fdc</value> > + <value>scsi</value> > + <value>virtio</value> > + <value>usb</value> > + <value>sata</value> > + </enum> > + </disk> > + <graphics supported='yes'> > + <enum name='type'> > + <value>sdl</value> > + <value>vnc</value> > + <value>spice</value> > + </enum> > + </graphics> > + <video supported='yes'> > + <enum name='modelType'> > + <value>vga</value> > + <value>cirrus</value> > + <value>vmvga</value> > + <value>qxl</value> > + <value>virtio</value> > + </enum> > + </video> > + <hostdev supported='yes'> > + <enum name='mode'> > + <value>subsystem</value> > + </enum> > + <enum name='startupPolicy'> > + <value>default</value> > + <value>mandatory</value> > + <value>requisite</value> > + <value>optional</value> > + </enum> > + <enum name='subsysType'> > + <value>usb</value> > + <value>pci</value> > + <value>scsi</value> > + </enum> > + <enum name='capsType'/> > + <enum name='pciBackend'> > + <value>default</value> > + <value>vfio</value> > + </enum> > + </hostdev> > + </devices> > + <features> > + <gic supported='no'/> > + <vmcoreinfo supported='yes'/> > + <genid supported='yes'/> > + <sev supported='yes'> > + <cbitpos>47</cbitpos> > + <reducedPhysBits>1</reducedPhysBits> > + </sev> > + </features> > +</domainCapabilities> > + > + Extra lines here can be dropped, git am had a warning about it at least. > diff --git a/tests/utils.py b/tests/utils.py > index f74d16ce..dc6aecb8 100644 > --- a/tests/utils.py > +++ b/tests/utils.py > @@ -74,6 +74,7 @@ class _URIs(object): > _uri_kvm = _uri_qemu + _domcaps("kvm-x86_64-domcaps.xml") > _uri_kvm_rhel7 = _uri_qemu + _domcaps("kvm-x86_64-rhel7-domcaps.xml") > _uri_kvm_q35 = _uri_qemu + _domcaps("kvm-x86_64-domcaps-q35.xml") > + _uri_kvm_amd_q35 = _uri_qemu + _domcaps("kvm-x86_64-amd-domcaps-q35.xml") > _uri_kvm_aarch64 = _uri_qemu + _domcaps("kvm-aarch64-domcaps.xml") > _uri_qemu_riscv64 = _uri_qemu + _domcaps("qemu-riscv64-domcaps.xml") > > @@ -82,6 +83,7 @@ class _URIs(object): > self.kvm_nodomcaps = _uri_qemu + _caps("kvm-x86_64.xml") > self.kvm_rhel = _uri_kvm_rhel7 + _caps("kvm-x86_64-rhel7.xml") > self.kvm_q35 = _uri_kvm_q35 + _caps("kvm-x86_64.xml") > + self.kvm_amd_q35 = _uri_kvm_amd_q35 + _caps("kvm-x86_64.xml") > self.kvm_session = self.kvm + ",session" > I'd call this self.kvm_amd_sev Thanks, Cole > self.kvm_armv7l = _uri_kvm + _caps("kvm-armv7l.xml") > _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list