aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm
diff options
context:
space:
mode:
authorDor Laor <dor.laor@qumranet.com>2007-01-05 19:37:00 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2007-01-06 02:55:28 -0500
commit022a93080c269e913793bea3a9a7fed06ca7d29b (patch)
tree2d7306a5206bb4c9cc147b0b1ed06e211695be10 /drivers/kvm
parent68a99f6d37aa65e848e09ec6ea52848e93bd5de2 (diff)
[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: Dor Laor <dor.laor@qumranet.com> Signed-off-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/kvm')
-rw-r--r--drivers/kvm/svm.c3
-rw-r--r--drivers/kvm/vmx.c3
2 files changed, 2 insertions, 4 deletions
diff --git a/drivers/kvm/svm.c b/drivers/kvm/svm.c
index af1e7b3f9171..ccc06b1b91b5 100644
--- a/drivers/kvm/svm.c
+++ b/drivers/kvm/svm.c
@@ -1206,8 +1206,7 @@ static int interrupt_window_interception(struct kvm_vcpu *vcpu,
1206 * possible 1206 * possible
1207 */ 1207 */
1208 if (kvm_run->request_interrupt_window && 1208 if (kvm_run->request_interrupt_window &&
1209 !vcpu->irq_summary && 1209 !vcpu->irq_summary) {
1210 (vcpu->svm->vmcb->save.rflags & X86_EFLAGS_IF)) {
1211 ++kvm_stat.irq_window_exits; 1210 ++kvm_stat.irq_window_exits;
1212 kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN; 1211 kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN;
1213 return 0; 1212 return 0;
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c
index e6ea76cdfdbd..d4701cb4c654 100644
--- a/drivers/kvm/vmx.c
+++ b/drivers/kvm/vmx.c
@@ -1604,8 +1604,7 @@ static int handle_interrupt_window(struct kvm_vcpu *vcpu,
1604 * possible 1604 * possible
1605 */ 1605 */
1606 if (kvm_run->request_interrupt_window && 1606 if (kvm_run->request_interrupt_window &&
1607 !vcpu->irq_summary && 1607 !vcpu->irq_summary) {
1608 (vmcs_readl(GUEST_RFLAGS) & X86_EFLAGS_IF)) {
1609 kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN; 1608 kvm_run->exit_reason = KVM_EXIT_IRQ_WINDOW_OPEN;
1610 ++kvm_stat.irq_window_exits; 1609 ++kvm_stat.irq_window_exits;
1611 return 0; 1610 return 0;