On 10/03/2017 10:31, Yu Zhang wrote: >> We can also add a module parameter to force emulation, so that it will >> be possible to test UMIP emulation on newer processors too. > > Thanks for your reply, Paolo. :-) > > Well, my previous understanding is that there might be a situation on a > machine with UMIP > feature: > 1> when an APP in VM runs instructions such as sgdt addrA, > 2> and the addrA may cause anVM exit(e.g. ept violation), > 3> next, the emulator in hypervisor need to inject a GP fault to the VM. > Is this situation possible? No, the guest will execute the instruction again after the vmexit. > But as to the scenario you described, I do not quit understand. > I mean, on a host which do not support UMIP, although hypervisor may > intercept cpuid and > provide an emulated cr4 to guest, how does it guarantee those > instructions in VM will cause a VM exit? All instructions except SMSW can be trapped using descriptor table vmexits. Paolo