KVM: VMX: Optimize vmx_get_cpl()
In long mode, vm86 mode is disallowed, so we need not check for it. Reading rflags.vm may require a VMREAD, so it is expensive. Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
6de12732c4
commit
f4c63e5d5a
|
@ -2120,7 +2120,8 @@ static int vmx_get_cpl(struct kvm_vcpu *vcpu)
|
|||
if (!is_protmode(vcpu))
|
||||
return 0;
|
||||
|
||||
if (kvm_get_rflags(vcpu) & X86_EFLAGS_VM) /* if virtual 8086 */
|
||||
if (!is_long_mode(vcpu)
|
||||
&& (kvm_get_rflags(vcpu) & X86_EFLAGS_VM)) /* if virtual 8086 */
|
||||
return 3;
|
||||
|
||||
return vmcs_read16(GUEST_CS_SELECTOR) & 3;
|
||||
|
|
Loading…
Reference in New Issue