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@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
LKML-Reference: <49F655B6.8020109@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Yinghai Lu 2009-04-27 18:02:46 -07:00 committed by Ingo Molnar
parent d047f53a2e
commit 56b581ea95

View file

@ -98,6 +98,7 @@ int __ht_create_irq(struct pci_dev *dev, int idx, ht_irq_update_t *update)
int max_irq; int max_irq;
int pos; int pos;
int irq; int irq;
int node;
pos = pci_find_ht_capability(dev, HT_CAPTYPE_IRQ); pos = pci_find_ht_capability(dev, HT_CAPTYPE_IRQ);
if (!pos) 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_lo = 0xffffffff;
cfg->msg.address_hi = 0xffffffff; cfg->msg.address_hi = 0xffffffff;
irq = create_irq(); node = dev_to_node(&dev->dev);
irq = create_irq_nr(0, node);
if (irq <= 0) { if (irq <= 0) {
kfree(cfg); kfree(cfg);