Messages in this thread | | | From | Vitaly Kuznetsov <> | Subject | Re: [Question] some questions about vmx | Date | Thu, 06 Feb 2020 13:00:02 +0100 |
| |
linmiaohe <linmiaohe@huawei.com> writes:
> About nWMX. > When nested_vmx_handle_enlightened_vmptrld() return 0, it do not inject any exception or set rflags to > Indicate VMLAUNCH instruction failed and skip this instruction. This would cause nested_vmx_run() > return 1 and resume guest and retry this instruction. When the error causing nested_vmx_handle_enlightened_vmptrld() > failed can't be handled, would deadloop ouucr ?
Yes, it seems it can.
nested_vmx_handle_enlightened_vmptrld() has two possible places where it can fail:
kvm_vcpu_map() -- meaning that the guest passed some invalid GPA. revision id check -- meaning that the supplied eVMCS is unsupported/garbage.
I think the right behavior would be to nested_vmx_failInvalid() in both these cases. We can also check what genuing Hyper-V does.
-- Vitaly
| |