All of lore.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Jiang Liu <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: bhelgaas@google.com, rjw@rjwysocki.net, benh@kernel.crashing.org,
	david.a.cohen@linux.intel.com, tglx@linutronix.de,
	jiang.liu@linux.intel.com, konrad.wilk@oracle.com,
	rdunlap@infradead.org, yinghai@kernel.org, joro@8bytes.org,
	linux-kernel@vger.kernel.org, david.vrabel@citrix.com,
	sivanich@sgi.com, gregkh@linuxfoundation.org,
	tony.luck@intel.com, linux@eikelenboom.it, mingo@kernel.org,
	bp@alien8.de, hpa@zytor.com
Subject: [tip:x86/apic] x86/MSI: Use new irqdomain interfaces to allocate/ free IRQ
Date: Fri, 24 Apr 2015 08:44:22 -0700	[thread overview]
Message-ID: <tip-4c8f9960ee497020d0858362c81ece984bc89aa5@git.kernel.org> (raw)
In-Reply-To: <1416894816-23245-5-git-send-email-jiang.liu@linux.intel.com>

Commit-ID:  4c8f9960ee497020d0858362c81ece984bc89aa5
Gitweb:     http://git.kernel.org/tip/4c8f9960ee497020d0858362c81ece984bc89aa5
Author:     Jiang Liu <jiang.liu@linux.intel.com>
AuthorDate: Mon, 13 Apr 2015 14:11:26 +0800
Committer:  Thomas Gleixner <tglx@linutronix.de>
CommitDate: Fri, 24 Apr 2015 15:36:48 +0200

x86/MSI: Use new irqdomain interfaces to allocate/free IRQ

Use new irqdomain interfaces to allocate/free IRQ for PCI MSI, so we
can remove GENERIC_IRQ_LEGACY_ALLOC_HWIRQ later.

Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: David Cohen <david.a.cohen@linux.intel.com>
Cc: Sander Eikelenboom <linux@eikelenboom.it>
Cc: David Vrabel <david.vrabel@citrix.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Link: http://lkml.kernel.org/r/1416894816-23245-5-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
 arch/x86/kernel/apic/msi.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/arch/x86/kernel/apic/msi.c b/arch/x86/kernel/apic/msi.c
index d6ba2d6..76cc2c9 100644
--- a/arch/x86/kernel/apic/msi.c
+++ b/arch/x86/kernel/apic/msi.c
@@ -14,6 +14,7 @@
 #include <linux/dmar.h>
 #include <linux/hpet.h>
 #include <linux/msi.h>
+#include <linux/irqdomain.h>
 #include <asm/msidef.h>
 #include <asm/hpet.h>
 #include <asm/hw_irq.h>
@@ -146,23 +147,20 @@ int setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 int native_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
 {
 	struct msi_desc *msidesc;
-	unsigned int irq;
-	int node, ret;
+	int irq, ret;
 
 	/* Multiple MSI vectors only supported with interrupt remapping */
 	if (type == PCI_CAP_ID_MSI && nvec > 1)
 		return 1;
 
-	node = dev_to_node(&dev->dev);
-
 	list_for_each_entry(msidesc, &dev->msi_list, list) {
-		irq = irq_alloc_hwirq(node);
-		if (!irq)
+		irq = irq_domain_alloc_irqs(NULL, 1, NUMA_NO_NODE, NULL);
+		if (irq <= 0)
 			return -ENOSPC;
 
 		ret = setup_msi_irq(dev, msidesc, irq, 0);
 		if (ret < 0) {
-			irq_free_hwirq(irq);
+			irq_domain_free_irqs(irq, 1);
 			return ret;
 		}
 
@@ -172,7 +170,7 @@ int native_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
 
 void native_teardown_msi_irq(unsigned int irq)
 {
-	irq_free_hwirq(irq);
+	irq_domain_free_irqs(irq, 1);
 }
 
 #ifdef CONFIG_DMAR_TABLE

  parent reply	other threads:[~2015-04-24 15:45 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-25  5:53 [Patch Part2 v6 00/27] Enable hierarchy irqdomian on x86 platforms Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 01/27] x86, irq: Save destination CPU ID in irq_cfg Jiang Liu
2014-11-26 23:05   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 02/27] x86, irq: Use hierarchy irqdomain to manage CPU interrupt vectors Jiang Liu
2014-11-26 23:06   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 03/27] x86, hpet: Use new irqdomain interfaces to allocate/free IRQ Jiang Liu
2014-11-26 23:06   ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-04-24 15:44   ` [tip:x86/apic] x86/hpet: Use new irqdomain interfaces to allocate /free IRQ tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 04/27] x86, MSI: Use new irqdomain interfaces to allocate/free IRQ Jiang Liu
2014-11-26 23:06   ` [tip:x86/apic] x86, MSI: Use new irqdomain interfaces to allocate /free IRQ tip-bot for Jiang Liu
2015-04-24 15:44   ` tip-bot for Jiang Liu [this message]
2014-11-25  5:53 ` [Patch Part2 v6 05/27] x86, uv: Use new irqdomain interfaces to allocate/free IRQ Jiang Liu
2014-11-26 23:06   ` [tip:x86/apic] x86, uv: Use new irqdomain interfaces to allocate/ free IRQ tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 06/27] x86, htirq: Use new irqdomain interfaces to allocate/free IRQ Jiang Liu
2014-11-26 23:07   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 12/27] x86, hpet: Enhance HPET IRQ to support hierarchy irqdomain Jiang Liu
2014-11-26 23:08   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 14/27] x86, irq: Directly call native_compose_msi_msg() for DMAR IRQ Jiang Liu
2014-11-26 23:09   ` [tip:x86/apic] " tip-bot for Jiang Liu
     [not found] ` <1416894816-23245-1-git-send-email-jiang.liu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2014-11-25  5:53   ` [Patch Part2 v6 07/27] x86, dmar: Use new irqdomain interfaces to allocate/free IRQ Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:07     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 08/27] x86: irq_remapping: Introduce new interfaces to support hierarchy irqdomain Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:07     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 09/27] iommu/vt-d: Change prototypes to prepare for enabling " Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:07     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 10/27] iommu/vt-d: Enhance Intel IR driver to suppport " Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:08     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 11/27] iommu/amd: Enhance AMD " Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:08     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 13/27] x86, PCI, MSI: Use hierarchy irqdomain to manage MSI interrupts Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:09     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 15/27] iommu/vt-d: Clean up unused MSI related code Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:09     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 16/27] iommu/amd: " Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:09     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 17/27] x86: irq_remapping: " Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:10     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53   ` [Patch Part2 v6 19/27] iommu/vt-d: Refine the interfaces to create IRQ for DMAR unit Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-25  5:53     ` Jiang Liu
2014-11-26 23:10     ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 18/27] x86, irq: Clean up unused MSI related code and interfaces Jiang Liu
2014-11-26 23:10   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 20/27] x86, irq: Use hierarchy irqdomain to manage DMAR interrupts Jiang Liu
2014-11-26 23:10   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 21/27] x86, htirq: Use hierarchy irqdomain to manage Hypertransport interrupts Jiang Liu
2014-11-26 23:11   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 22/27] x86, uv: Use hierarchy irqdomain to manage UV interrupts Jiang Liu
2014-11-26 23:11   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-15 21:37   ` [Patch Part2 v6 22/27] " Dimitri Sivanich
2014-12-16 17:29     ` Dimitri Sivanich
2014-12-17  2:41       ` Jiang Liu
2014-12-17 16:45         ` Russ Anderson
2014-12-23  7:18           ` Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 23/27] x86, irq: Normalize x86 irq_chip name Jiang Liu
2014-11-26 23:11   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 24/27] x86, PCI/MSI: Simplify the way to deal with remapped MSI interrupts Jiang Liu
2014-11-26 23:11   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 25/27] PCI/MSI: Replace msi_update_msg() with irq_chip_compose_msi_msg() Jiang Liu
2014-11-26 23:12   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 26/27] x86, irq: Implement irq_chip.irq_write_msi_msg for MSI/DMAR/HPET irq_chips Jiang Liu
2014-11-26 23:12   ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-25  5:53 ` [Patch Part2 v6 27/27] x86, irq: Simplify MSI/DMAR/HPET implementation by using common code Jiang Liu
2014-11-26 23:12   ` [tip:x86/apic] x86, irq: Simplify MSI/DMAR/ HPET " tip-bot for Jiang Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=tip-4c8f9960ee497020d0858362c81ece984bc89aa5@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=benh@kernel.crashing.org \
    --cc=bhelgaas@google.com \
    --cc=bp@alien8.de \
    --cc=david.a.cohen@linux.intel.com \
    --cc=david.vrabel@citrix.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hpa@zytor.com \
    --cc=jiang.liu@linux.intel.com \
    --cc=joro@8bytes.org \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=linux@eikelenboom.it \
    --cc=mingo@kernel.org \
    --cc=rdunlap@infradead.org \
    --cc=rjw@rjwysocki.net \
    --cc=sivanich@sgi.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=yinghai@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.