svn commit: r315364 - head/sys/amd64/vmm
Peter Grehan
grehan at FreeBSD.org
Thu Mar 16 03:21:44 UTC 2017
Author: grehan
Date: Thu Mar 16 03:21:42 2017
New Revision: 315364
URL: https://svnweb.freebsd.org/changeset/base/315364
Log:
Hide the AMD MONITORX/MWAITX capability.
Otherwise, recent Linux guests will use these instructions, resulting
in #UD exceptions since bhyve doesn't implement MONITOR/MWAIT exits.
This fixes boot-time hangs in recent Linux guests on Ryzen CPUs
(and probably Bulldozer aka AMD FX as well).
Reviewed by: kib
MFC after: 1 week
Modified:
head/sys/amd64/vmm/x86.c
Modified: head/sys/amd64/vmm/x86.c
==============================================================================
--- head/sys/amd64/vmm/x86.c Thu Mar 16 03:20:59 2017 (r315363)
+++ head/sys/amd64/vmm/x86.c Thu Mar 16 03:21:42 2017 (r315364)
@@ -176,6 +176,9 @@ x86_emulate_cpuid(struct vm *vm, int vcp
/* Don't advertise the OS visible workaround feature */
regs[2] &= ~AMDID2_OSVW;
+ /* Hide mwaitx/monitorx capability from the guest */
+ regs[2] &= ~AMDID2_MWAITX;
+
/*
* Hide rdtscp/ia32_tsc_aux until we know how
* to deal with them.
More information about the svn-src-head
mailing list