I have tested this with a GCE instance with nested enabled here the domcapabilities for the type: <mode name='host-model' supported='yes'> <model fallback='forbid'>Skylake-Client-IBRS</model> <vendor>Intel</vendor> <feature policy='require' name='ss'/> <feature policy='require' name='vmx'/> <feature policy='require' name='hypervisor'/> <feature policy='require' name='tsc_adjust'/> <feature policy='require' name='md-clear'/> <feature policy='require' name='ssbd'/> <feature policy='require' name='invtsc'/> <feature policy='disable' name='mpx'/> <feature policy='disable' name='xsavec'/> <feature policy='disable' name='xgetbv1'/> </mode>
I set the guest (on Bionic) to use host-model: <cpu mode="host-model"/> Due to that it got on first execution the model generated as the above reported type: <cpu mode='custom' match='exact' check='full'> <model fallback='forbid'>Skylake-Client-IBRS</model> <vendor>Intel</vendor> <feature policy='require' name='ss'/> <feature policy='require' name='vmx'/> <feature policy='require' name='hypervisor'/> <feature policy='require' name='tsc_adjust'/> <feature policy='require' name='md-clear'/> <feature policy='require' name='ssbd'/> <feature policy='disable' name='mpx'/> <feature policy='disable' name='xsavec'/> <feature policy='disable' name='xgetbv1'/> </cpu> Guest starts fine, no related errors in /var/log/libvirt/qemu/testguest.log After an update to focal the type is now reported as unusable <model usable='no'>Skylake-Client-IBRS</model> The guest would now be detected as, it thinks this definition is now closer: <mode name='host-model' supported='yes'> <model fallback='forbid'>Broadwell-IBRS</model> <vendor>Intel</vendor> <feature policy='require' name='vme'/> <feature policy='require' name='ss'/> <feature policy='require' name='vmx'/> <feature policy='require' name='f16c'/> <feature policy='require' name='rdrand'/> <feature policy='require' name='hypervisor'/> <feature policy='require' name='arat'/> <feature policy='require' name='tsc_adjust'/> <feature policy='require' name='umip'/> <feature policy='require' name='md-clear'/> <feature policy='require' name='stibp'/> <feature policy='require' name='arch-capabilities'/> <feature policy='require' name='ssbd'/> <feature policy='require' name='xsaveopt'/> <feature policy='require' name='abm'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='rsba'/> <feature policy='require' name='skip-l1dfl-vmentry'/> </mode> No matter if I use host-model of the former Skylake type - the guest now starts with the reported crash: $ sudo tail -f /var/log/libvirt/qemu/testguest.log ... error: Failed to start domain testguest error: internal error: process exited while connecting to monitor: 2020-06-09T13:51:27.110925Z 2020-06-09T13:51:27.111798Z qemu-system-x86_64: error: failed to set MSR 0x48b to 0x159ff00000000 qemu-system-x86_64: /build/qemu-7aKH5L/qemu-4.2/target/i386/kvm.c:2680: kvm_buf_set_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed. Updating to the PPA with the suggested fix and it resolves the issue as expected. ** Also affects: cloud-archive Importance: Undecided Status: New ** Changed in: qemu (Ubuntu) Status: Triaged => In Progress -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1882774 Title: issues with secondary VMX execution controls To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-archive/+bug/1882774/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs