[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200617093725.1725569-2-stefanha@redhat.com>
Date: Wed, 17 Jun 2020 10:37:24 +0100
From: Stefan Hajnoczi <stefanha@...hat.com>
To: linux-kernel@...r.kernel.org
Cc: Marcelo Tosatti <mtosatti@...hat.com>, linux-pci@...r.kernel.org,
Thomas Gleixner <tglx@...utronix.de>,
Bjorn Helgaas <bhelgaas@...gle.com>,
"Michael S. Tsirkin" <mst@...hat.com>,
Stefan Hajnoczi <stefanha@...hat.com>
Subject: [RFC 1/2] genirq: honor device NUMA node when allocating descs
Use the device's NUMA node instead of the first masked CPUs node when
descs are allocated. The mask may include all CPUs and therefore not
correspond to the home NUMA node of the device.
Signed-off-by: Stefan Hajnoczi <stefanha@...hat.com>
---
kernel/irq/irqdesc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c
index 1a7723604399..b9c4160d72c4 100644
--- a/kernel/irq/irqdesc.c
+++ b/kernel/irq/irqdesc.c
@@ -488,7 +488,8 @@ static int alloc_descs(unsigned int start, unsigned int cnt, int node,
IRQD_MANAGED_SHUTDOWN;
}
mask = &affinity->mask;
- node = cpu_to_node(cpumask_first(mask));
+ if (node == NUMA_NO_NODE)
+ node = cpu_to_node(cpumask_first(mask));
affinity++;
}
--
2.26.2
Powered by blists - more mailing lists