Files
acrn-hypervisor/hypervisor/arch/x86/guest
Binbin Wu 2fd6e119ca hv: vmcall: hv should not change guest RAX vmcall is undefined
HV passes the return value of vmcall by register RAX unconditionally.
However, if the vmcall is undefined for a guest, RAX value of guest vcpu
should not be changed.

According to SDM Vol. 3C 30-9, VMCALL is allowed from any CPL in guest.
VMCALL is NOT allowed from  CPL > 0 in vmx root mode.
ACRN hypervisor doesn't call VMCALL in vmx root mode, though.

In current code, ACRN also deny VMCALL from CPL > 0 in guest.
So for this case, #GP will not be injected, instead, modify the RAX to
notify the return value.

Tracked-On: #2405
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-02-18 11:56:42 +08:00
..
2019-02-14 10:16:21 +08:00
2019-02-01 16:30:55 +08:00
2019-01-30 20:43:04 +08:00
2019-01-21 18:03:31 +08:00
2019-01-30 20:43:04 +08:00
2018-12-19 09:44:42 +08:00
2019-02-14 10:16:21 +08:00
2019-01-21 18:03:31 +08:00
2019-02-03 13:00:42 +08:00