WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] iommu: Fix hvm_dpci_eoi for smp guest in

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] iommu: Fix hvm_dpci_eoi for smp guest in ioapic interrupt mode
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 03 Jul 2008 06:30:18 -0700
Delivery-date: Thu, 03 Jul 2008 06:30:36 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/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 1215016107 -3600
# Node ID 3d5f28d6e77711d3b5adb8fd75cd05fe0537302d
# Parent  97b4c5c511f04dc91ae2637e076d325ed91d01e7
iommu: Fix hvm_dpci_eoi for smp guest in ioapic interrupt mode

My testing shows, for some smp guests, ent->fields.mask will not be
unmasked when hvm_dpci_eoi() is invoked at the first time. In that
case, we should rely on timeout call back to do pirq_guest_eoi() and
should not stop the per-irq timer too early.

From: Wei Wang <wei.wang2@xxxxxxx>
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/drivers/passthrough/io.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff -r 97b4c5c511f0 -r 3d5f28d6e777 xen/drivers/passthrough/io.c
--- a/xen/drivers/passthrough/io.c      Wed Jul 02 17:26:42 2008 +0100
+++ b/xen/drivers/passthrough/io.c      Wed Jul 02 17:28:27 2008 +0100
@@ -258,10 +258,12 @@ void hvm_dpci_eoi(struct domain *d, unsi
     {
         spin_unlock(&hvm_irq_dpci->dirq_lock);
 
-        stop_timer(&hvm_irq_dpci->hvm_timer[
-            domain_irq_to_vector(d, machine_gsi)]);
         if ( (ent == NULL) || !ent->fields.mask )
+        {
+            stop_timer(&hvm_irq_dpci->hvm_timer[
+                domain_irq_to_vector(d, machine_gsi)]);
             pirq_guest_eoi(d, machine_gsi);
+        }
     }
     else
         spin_unlock(&hvm_irq_dpci->dirq_lock);

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] iommu: Fix hvm_dpci_eoi for smp guest in ioapic interrupt mode, Xen patchbot-unstable <=