Messages in this thread | | | Date | Thu, 9 Feb 2012 14:51:30 -0800 (PST) | From | David Rientjes <> | Subject | Re: [PATCH] Use NUMA node cpu mask in irq affinity [v2] |
| |
On Thu, 9 Feb 2012, Prarit Bhargava wrote:
> diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c > index a9a9dbe..3064f2f 100644 > --- a/kernel/irq/manage.c > +++ b/kernel/irq/manage.c > @@ -301,6 +301,13 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask) > } > > cpumask_and(mask, cpu_online_mask, set); > + if (desc->irq_data.node != -1) {
Should probably be using NUMA_NO_NODE.
> + const struct cpumask *nodemask = > + cpumask_of_node(desc->irq_data.node); > + /* make sure at least one of the cpus in nodemask is online */ > + if (cpumask_intersects(mask, nodemask)) > + cpumask_and(mask, mask, nodemask); > + } > ret = chip->irq_set_affinity(&desc->irq_data, mask, false); > switch (ret) { > case IRQ_SET_MASK_OK:
| |