diff options
author | 2016-10-05 08:04:14 +0000 | |
---|---|---|
committer | 2016-10-05 08:04:14 +0000 | |
commit | 68b3eab74129b6b5d6bdacd81fed5a26ec61132f (patch) | |
tree | 1be1e1515a3fe0bdbd02f82d3927074d992436a9 | |
parent | Some device trees use 64-bit intermediate virtual addresses. This (diff) | |
download | wireguard-openbsd-68b3eab74129b6b5d6bdacd81fed5a26ec61132f.tar.xz wireguard-openbsd-68b3eab74129b6b5d6bdacd81fed5a26ec61132f.zip |
Add a missing flush; this appears to fix the broadwell/skylake "failed to
launch with valid vmcs" issue some people have been seeing when launching
vmm(4) VMs.
tested by reyk@
-rw-r--r-- | sys/arch/amd64/amd64/vmm.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/vmm.c b/sys/arch/amd64/amd64/vmm.c index 551b688d59a..7b3c5ead518 100644 --- a/sys/arch/amd64/amd64/vmm.c +++ b/sys/arch/amd64/amd64/vmm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vmm.c,v 1.88 2016/10/03 04:53:54 mlarkin Exp $ */ +/* $OpenBSD: vmm.c,v 1.89 2016/10/05 08:04:14 mlarkin Exp $ */ /* * Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org> * @@ -2155,7 +2155,10 @@ exit: if (vcpu->vc_vmx_msr_entry_load_va) km_free((void *)vcpu->vc_vmx_msr_entry_load_va, PAGE_SIZE, &kv_page, &kp_zero); - } + } else { + if (vmclear(&vcpu->vc_control_pa)) + ret = EINVAL; + } return (ret); } |