提交 022a9308 编写于 作者: D Dor Laor 提交者: Linus Torvalds

[PATCH] KVM: Simplify test for interrupt window

No need to test for rflags.if as both VT and SVM specs assure us that on exit
caused from interrupt window opening, 'if' is set.
Signed-off-by: NDor Laor <dor.laor@qumranet.com>
Signed-off-by: NAvi Kivity <avi@qumranet.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 68a99f6d
...@@ -1206,8 +1206,7 @@ static int interrupt_window_interception(struct kvm_vcpu *vcpu, ...@@ -1206,8 +1206,7 @@ static int interrupt_window_interception(struct kvm_vcpu *vcpu,
* possible * possible
*/ */
if (kvm_run->request_interrupt_window && if (kvm_run->request_interrupt_window &&
!vcpu->irq_summary && !vcpu->irq_summary) {
(vcpu->svm->vmcb->save.rflags & X86_EFLAGS_IF)) {
++kvm_stat.irq_window_exits; ++kvm_stat.irq_window_exits;
kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN; kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN;
return 0; return 0;
......
...@@ -1604,8 +1604,7 @@ static int handle_interrupt_window(struct kvm_vcpu *vcpu, ...@@ -1604,8 +1604,7 @@ static int handle_interrupt_window(struct kvm_vcpu *vcpu,
* possible * possible
*/ */
if (kvm_run->request_interrupt_window && if (kvm_run->request_interrupt_window &&
!vcpu->irq_summary && !vcpu->irq_summary) {
(vmcs_readl(GUEST_RFLAGS) & X86_EFLAGS_IF)) {
kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN; kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN;
++kvm_stat.irq_window_exits; ++kvm_stat.irq_window_exits;
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册