I finally got (temporary) hold of a EPYC 7713 which should work well for
this.

Initial detection is the same on Focal and Hirsute
    <mode name='host-model' supported='yes'>
      <model fallback='forbid'>EPYC-Rome</model>
      <vendor>AMD</vendor>
      <feature policy='require' name='pcid'/>
      <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='erms'/>
      <feature policy='require' name='vaes'/>
      <feature policy='require' name='vpclmulqdq'/>
      <feature policy='require' name='spec-ctrl'/>
      <feature policy='require' name='stibp'/>
      <feature policy='require' name='arch-capabilities'/>
      <feature policy='require' name='ssbd'/>
      <feature policy='require' name='xsaves'/>
      <feature policy='require' name='cmp_legacy'/>
      <feature policy='require' name='invtsc'/>
      <feature policy='require' name='amd-ssbd'/>
      <feature policy='require' name='virt-ssbd'/>
      <feature policy='require' name='rdctl-no'/>
      <feature policy='require' name='skip-l1dfl-vmentry'/>
      <feature policy='require' name='mds-no'/>
      <feature policy='require' name='pschange-mc-no'/>
    </mode>

# virsh domcapabilities | grep EPYC
      <model fallback='forbid'>EPYC-Rome</model>
      <model usable='yes'>EPYC-Rome</model>
      <model usable='yes'>EPYC-IBPB</model>
      <model usable='yes'>EPYC</model>

# qemu-system-x86_64 -cpu ? | grep EPYC
x86 EPYC                  (alias configured by machine type)
x86 EPYC-IBPB             (alias of EPYC-v2)
x86 EPYC-Rome             (alias configured by machine type)
x86 EPYC-Rome-v1          AMD EPYC-Rome Processor
x86 EPYC-v1               AMD EPYC Processor
x86 EPYC-v2               AMD EPYC Processor (with IBPB)
x86 EPYC-v3               AMD EPYC Processor

So far all just confirming your reports :-)

I tried all combinations of Focal/Hirsute as Host/Guest
Using Host-passthrough, Host-model and the newest named type available at the 
time EPYC-Rome.
With EPYC-Rome being just that
  <cpu mode='custom' match='exact' check='partial'>
    <model fallback='forbid'>EPYC-Rome</model>
  </cpu>

I can also confirm that focal works but Hirsute guests trigger the mentioned 
MSR error:
$ uvt-kvm ssh h-on-f "sudo journalctl" | grep MSR
Apr 15 10:31:01 h-on-h kernel: unchecked MSR access error: WRMSR to 0xda0 
(tried to write 0x0000000000000000) at rIP: 0xffffffff9027fa44 
(native_write_msr+0x4/0x30)
Apr 15 10:31:01 h-on-h kernel: unchecked MSR access error: RDMSR from 0xda0 at 
rIP: 0xffffffff9027f968 (native_read_msr+0x8/0x40)

This behavior is the same on Focal&Hirsute.

Note: This does not break/abort the guest, but it is bad still.

Thanks for your awesome testing BTW - it seems all I can do is seconding your 
findings.
Which is great :-)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1921880

Title:
  Add EPYC-Milan model

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1921880/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to