[Bug 235010] bhyve: Linux guest crash due to unhandled MSR

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Jan 16 20:46:19 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235010

            Bug ID: 235010
           Summary: bhyve: Linux guest crash due to unhandled MSR
           Product: Base System
           Version: 12.0-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Keywords: bhyve
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs at FreeBSD.org
          Reporter: rys at sommefeldt.com

Created attachment 201198
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=201198&action=edit
Bad boot due to unhandled Spectre v2 MSR

bhyve in FreeBSD 12.0-RELEASE can't run certain Linux guests on certain AMD
processors due to an unhandled MSR related to the Spectre v2 mitigation present
in modern Linux kernels.

Use of the -w switch lets at least certain guests run properly.

The MSR is 0x49, and the bhyve log shows the guest attempting to set it to 0x1.
I've attached logs from a single vCPU configuration attempting to run Debian
9.6.0.

debian9-1vCPU.log is from a run without -w
debian9-1vCPU-ignore-unimplemented-msr.log is from a run with -w

This LKML thread has more information on how it relates to Spectre v2
mitigation:

https://lkml.org/lkml/2019/1/3/540

I don't understand the interaction between the Linux kernel and the CPU as
presented to the guest by bhyve, with regards to the microcode. It's possible
my host system needs a microcode update delivered by the BIOS or FreeBSD
somehow, but I'm out of my depth there.

I'm able to get guests that support the Linux kernel's spectre_v2_user=off
kernel boot param to boot OK, without needing -w.

Let me know if I can do more testing. I'm running an AMD Ryzen Threadripper
2990WX with AGESA firmware 1.1.0.1a as part of the BIOS.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list