CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2022/05/20 16:14:19
Modified files:
sys/arch/amd64/amd64: vmm.c
Log message:
vmm: load the vmcs before reading vcpu registers
The vmm(4) ioctl for reading a vcpu's registers didn't flush and
load the vmcs before issuing vmread instructions. This adds a flag
to vcpu_readregs_vmx to signal if the vmcs needs to be synchronized
before attempting the reads. (This is the same approach used for
vcpu_writeregs_vmx function.)
This fixes `vmctl send` on Intel hosts using vmd(8).
While here, I noticed the vcpu_writeregs_vmx function doesn't
properly set the vmcs state variable to VMCS_CLEARED after running
a vmclear instruction. This can cause errors on vm re-entry.
ok mlarkin@