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] x86: teardown_msi_irq is not needed.

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: teardown_msi_irq is not needed.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 20 Aug 2009 00:35:14 -0700
Delivery-date: Thu, 20 Aug 2009 00:35:40 -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 1250753211 -3600
# Node ID e83bb28d48feee796837261247e0918255b42f85
# Parent  37dcd9c7877ce376b56018e79d03cc76a6e927ad
x86: teardown_msi_irq is not needed.

teardown_msi_irq logic is covered in destroy_irq,
so remove it to avoid freeing msi resource twice.

Signed-off-by: Xiantao Zhang<xiantao.zhang@xxxxxxxxx>
---
 xen/arch/x86/irq.c |    3 ---
 xen/arch/x86/msi.c |   38 --------------------------------------
 2 files changed, 41 deletions(-)

diff -r 37dcd9c7877c -r e83bb28d48fe xen/arch/x86/irq.c
--- a/xen/arch/x86/irq.c        Thu Aug 20 08:26:16 2009 +0100
+++ b/xen/arch/x86/irq.c        Thu Aug 20 08:26:51 2009 +0100
@@ -1383,9 +1383,6 @@ int unmap_domain_pirq(struct domain *d, 
 
     BUG_ON(irq != domain_pirq_to_irq(d, pirq));
 
-    if ( msi_desc )
-        teardown_msi_irq(irq);
-
     if ( !forced_unbind )
     {
         d->arch.pirq_irq[pirq] = 0;
diff -r 37dcd9c7877c -r e83bb28d48fe xen/arch/x86/msi.c
--- a/xen/arch/x86/msi.c        Thu Aug 20 08:26:16 2009 +0100
+++ b/xen/arch/x86/msi.c        Thu Aug 20 08:26:51 2009 +0100
@@ -215,22 +215,6 @@ static int set_irq_msi(struct msi_desc *
     return 0;
 }
 
-static int unset_irq_msi(int irq)
-{
-    ASSERT(spin_is_locked(&irq_desc[irq].lock));
-
-    if ( irq >= nr_irqs )
-    {
-        dprintk(XENLOG_ERR, "Trying to uninstall msi data for irq %d\n",
-                irq);
-        return -EINVAL;
-    }
-
-    irq_desc[irq].msi_desc = NULL;
-
-    return 0;
-}
-
 static void write_msi_msg(struct msi_desc *entry, struct msi_msg *msg)
 {
     if ( iommu_enabled )
@@ -455,11 +439,6 @@ int setup_msi_irq(struct pci_dev *dev, s
     write_msi_msg(irq_desc[irq].msi_desc, &msg);
 
     return 0;
-}
-
-void teardown_msi_irq(int irq)
-{
-    unset_irq_msi(irq);
 }
 
 int msi_free_irq(struct msi_desc *entry)
@@ -780,27 +759,10 @@ static void msi_free_irqs(struct pci_dev
 static void msi_free_irqs(struct pci_dev* dev)
 {
     struct msi_desc *entry, *tmp;
-    struct irq_desc *desc;
-    unsigned long flags, irq;
 
     list_for_each_entry_safe( entry, tmp, &dev->msi_list, list )
     {
-        irq = entry->irq;
-        desc = &irq_desc[irq];
         pci_disable_msi(entry);
-
-        spin_lock_irqsave(&desc->lock, flags);
-
-        teardown_msi_irq(irq);
-
-        if ( desc->handler == &pci_msi_type )
-        {
-            /* MSI is not shared, so should be released already */
-            BUG_ON(desc->status & IRQ_GUEST);
-            desc->handler = &no_irq_type;
-        }
-
-        spin_unlock_irqrestore(&desc->lock, flags);
         msi_free_irq(entry);
     }
 }

_______________________________________________
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] x86: teardown_msi_irq is not needed., Xen patchbot-unstable <=