[tip:irq/numa] irq: make ht irq_desc more numa aware

From: tip-bot for Yinghai Lu
Date: Fri May 01 2009 - 13:10:42 EST


Commit-ID: 56b581ea9591b5767b1e0204c6a06c7d0c49396e
Gitweb: http://git.kernel.org/tip/56b581ea9591b5767b1e0204c6a06c7d0c49396e
Author: Yinghai Lu <yinghai@xxxxxxxxxx>
AuthorDate: Mon, 27 Apr 2009 18:02:46 -0700
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 28 Apr 2009 12:21:19 +0200

irq: make ht irq_desc more numa aware

Try to get irq_desc on the same node as create_irq_nr().

[ Impact: optimization, make HT IRQs more NUMA-aware ]

Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
LKML-Reference: <49F655B6.8020109@xxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
drivers/pci/htirq.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/pci/htirq.c b/drivers/pci/htirq.c
index bf7d6ce..4e9dd0f 100644
--- a/drivers/pci/htirq.c
+++ b/drivers/pci/htirq.c
@@ -98,6 +98,7 @@ int __ht_create_irq(struct pci_dev *dev, int idx, ht_irq_update_t *update)
int max_irq;
int pos;
int irq;
+ int node;

pos = pci_find_ht_capability(dev, HT_CAPTYPE_IRQ);
if (!pos)
@@ -125,7 +126,8 @@ int __ht_create_irq(struct pci_dev *dev, int idx, ht_irq_update_t *update)
cfg->msg.address_lo = 0xffffffff;
cfg->msg.address_hi = 0xffffffff;

- irq = create_irq();
+ node = dev_to_node(&dev->dev);
+ irq = create_irq_nr(0, node);

if (irq <= 0) {
kfree(cfg);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/