Description of problem:
Unable to boot RHEL 6 virtual guest with Opteron_G4 or Opteron_G5 CPU type with the latest RHEL 6 guest kernel (2.6.32-696.30.1.el6.x86_64).
Host machine is latest RHEL 7.5, fully updated.
When trying to boot up a RHEL 6 guest with the latest RHEL 6 kernel, this error messages shows up after the GRUB menu screen in virt-viewer:
PANIC: early exception 0d rip 10:ffffffff810462b6 error 0 cr2 0
and the guest OS won't boot up at all.
This does not happen when booting up with the previous 2.6.32-696.28.1.el6.x86_64 kernel.
Using Opteron_G3 seems to work just fine, but using Opteron_G4 and Opteron_G5 prevents the RHEL 6 VM from booting up. This only happens with RHEL 6 guests. RHEL 7 guests work just fine with Opteron_G4 or Opteron_G5 CPU type with the latest RHEL 7 kernel.
Version-Release number of selected component (if applicable):
RHEL 7 host machine running latest libvirt and qemu-kvm:
[root@host ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.5 (Maipo)
[root@host ~]# rpm -qa | grep -e libvirt -e qemu
libvirt-libs-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-secret-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-logical-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-kvm-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-nwfilter-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-rbd-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-config-network-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-network-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-qemu-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-mpath-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-iscsi-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-config-nwfilter-3.9.0-14.el7_5.5.x86_64
qemu-kvm-common-1.5.3-156.el7_5.2.x86_64
libvirt-python-3.9.0-1.el7.x86_64
libvirt-daemon-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-core-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-nodedev-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-gluster-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-3.9.0-14.el7_5.5.x86_64
libvirt-client-3.9.0-14.el7_5.5.x86_64
libvirt-3.9.0-14.el7_5.5.x86_64
qemu-img-1.5.3-156.el7_5.2.x86_64
libvirt-daemon-driver-storage-scsi-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-lxc-3.9.0-14.el7_5.5.x86_64
ipxe-roms-qemu-20170123-1.git4e85b27.el7_4.1.noarch
libvirt-daemon-driver-interface-3.9.0-14.el7_5.5.x86_64
libvirt-daemon-driver-storage-disk-3.9.0-14.el7_5.5.x86_64
qemu-kvm-1.5.3-156.el7_5.2.x86_64
How reproducible:
Every time RHEL 6 guest boots up using latest RHEL 6 kernel and Opteron_G4 or Opteron_G5 CPU type.
Steps to Reproduce:
1. Install RHEL 6 guest on RHEL 7.5 host
2. Select Opteron_G4 or Opteron_G5 CPU type
3. Update RHEL 6 to latest kernel
4. Try to boot
Actual results:
Doesn't boot
Expected results:
Should boot
Additional info:
Specifying the CPU type is necessary in order to also specify the ibpb CPU feature flag for the guests in order for them to be protected from Spectre v2 vulnerability.