Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-changelog

[Xen-changelog] [xen-3.1-testing] hvm: Fix is_isa_irq_masked().

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-3.1-testing] hvm: Fix is_isa_irq_masked().
From: "Xen patchbot-3.1-testing" <patchbot-3.1-testing@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 14 Dec 2007 10:20:18 -0800
Delivery-date: Fri, 14 Dec 2007 10:20:20 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1197469930 0
# Node ID 1caed71f2a357533a569a7fdac7bfb06ca2368a7
# Parent  5669586c286ce2387e0963cb084acfd8239d216f
hvm: Fix is_isa_irq_masked().

Incorrectly it was not checking whether the vlapic is masking the pic.

Signed-off-by: Dexuan Cui <dexuan.cui@xxxxxxxxx>
xen-unstable changeset:   16594:686b75b31f3cc10453119dd23eac4e7ac3f9e9ad
xen-unstable date:        Wed Dec 12 10:40:02 2007 +0000
---
 xen/arch/x86/hvm/irq.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff -r 5669586c286c -r 1caed71f2a35 xen/arch/x86/hvm/irq.c
--- a/xen/arch/x86/hvm/irq.c    Wed Dec 12 14:30:35 2007 +0000
+++ b/xen/arch/x86/hvm/irq.c    Wed Dec 12 14:32:10 2007 +0000
@@ -328,12 +328,13 @@ int is_isa_irq_masked(struct vcpu *v, in
 int is_isa_irq_masked(struct vcpu *v, int isa_irq)
 {
     unsigned int gsi = hvm_isa_irq_to_gsi(isa_irq);
+    uint8_t pic_imr;
 
     if ( is_lvtt(v, isa_irq) )
         return !is_lvtt_enabled(v);
 
-    return ((v->domain->arch.hvm_domain.vpic[isa_irq >> 3].imr &
-             (1 << (isa_irq & 7))) &&
+    pic_imr = v->domain->arch.hvm_domain.vpic[isa_irq >> 3].imr;
+    return (((pic_imr & (1 << (isa_irq & 7))) || !vlapic_accept_pic_intr(v)) &&
             domain_vioapic(v->domain)->redirtbl[gsi].fields.mask);
 }
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-3.1-testing] hvm: Fix is_isa_irq_masked()., Xen patchbot-3.1-testing <=