]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sparc64/kernel/pci_msi.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-2.6-omap-h63xx.git] / arch / sparc64 / kernel / pci_msi.c
index d6d64b44af63da31e2512475f4e6167203758ea3..db5e8fd8f6742281bea1a643f46eefb317551ae5 100644 (file)
@@ -279,11 +279,17 @@ static int bringup_one_msi_queue(struct pci_pbm_info *pbm,
                                 unsigned long devino)
 {
        int irq = ops->msiq_build_irq(pbm, msiqid, devino);
-       int err;
+       int err, nid;
 
        if (irq < 0)
                return irq;
 
+       nid = pbm->numa_node;
+       if (nid != -1) {
+               cpumask_t numa_mask = node_to_cpumask(nid);
+
+               irq_set_affinity(irq, numa_mask);
+       }
        err = request_irq(irq, sparc64_msiq_interrupt, 0,
                          "MSIQ",
                          &pbm->msiq_irq_cookies[msiqid - pbm->msiq_first]);