mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-21 11:44:01 +08:00
KVM: VMX: Use vmx_get_rflags() to query RFLAGS in vmx_interrupt_blocked()
Use vmx_get_rflags() instead of manually reading vmcs.GUEST_RFLAGS when querying RFLAGS.IF so that multiple checks against interrupt blocking in a single run loop only require a single VMREAD. Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> Message-Id: <20200423022550.15113-14-sean.j.christopherson@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
db43859280
commit
7ab0abdb55
@ -4536,7 +4536,7 @@ bool vmx_interrupt_blocked(struct kvm_vcpu *vcpu)
|
|||||||
if (is_guest_mode(vcpu) && nested_exit_on_intr(vcpu))
|
if (is_guest_mode(vcpu) && nested_exit_on_intr(vcpu))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return !(vmcs_readl(GUEST_RFLAGS) & X86_EFLAGS_IF) ||
|
return !(vmx_get_rflags(vcpu) & X86_EFLAGS_IF) ||
|
||||||
(vmcs_read32(GUEST_INTERRUPTIBILITY_INFO) &
|
(vmcs_read32(GUEST_INTERRUPTIBILITY_INFO) &
|
||||||
(GUEST_INTR_STATE_STI | GUEST_INTR_STATE_MOV_SS));
|
(GUEST_INTR_STATE_STI | GUEST_INTR_STATE_MOV_SS));
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user