Comment 5 for bug 1813165

Revision history for this message
Laszlo Ersek (Red Hat) (lersek) wrote :

This is related to SMM usage in SeaBIOS. The QEMU register dump states SMM=1, plus "<0f> aa" from the dumped code stands for the RSM instruction (0F AA -- RSM—Resume from System Management Mode, see it in the Intel SDM.)

In RHEL7 downstream, we disabled SMM usage in SeaBIOS.
- https://bugzilla.redhat.com/show_bug.cgi?id=1378006
- https://bugzilla.redhat.com/show_bug.cgi?id=1464654#c21

It's conceivable that the upstream host kernel suffered a regression 4.19 and 4.20; in particular when it comes to nesting. For example, Ladi fixed <https://bugzilla.redhat.com/show_bug.cgi?id=1488203> in <https://www.spinics.net/lists/kvm/msg156709.html>:

0234bf885236 KVM: x86: introduce ISA specific SMM entry/exit callbacks
72d7b374b14d KVM: x86: introduce ISA specific smi_allowed callback
21f2d5511838 KVM: nVMX: set IDTR and GDTR limits when loading L1 host state
72e9cbdb4338 KVM: nVMX: fix SMI injection in guest mode
c26340651b75 KVM: nSVM: refactor nested_svm_vmrun
05cade71cf3b KVM: nSVM: fix SMI injection in guest mode

These were part of v4.15. But, based on <https://bugzilla.redhat.com/show_bug.cgi?id=1661979>, more recent kernels may have regressed those fixes.

(Bunch of non-public BZ references above; sorry about that, I can't open them up.)