Why NVMe MSIx vectors affinity set across NUMA nodes?

Ganapatrao Kulkarni gklkml16 at gmail.com
Sun Jan 21 20:25:55 PST 2018


Hi,

I  have observed that NVMe driver splitting interrupt affinity of MSIx
vectors among available NUMA nodes,
any specific reason for that?

i see this is happening due to pci flag PCI_IRQ_AFFINITY is set in
function nvme_setup_io_queues

   nr_io_queues = pci_alloc_irq_vectors(pdev, 1, nr_io_queues,
                        PCI_IRQ_ALL_TYPES | PCI_IRQ_AFFINITY);

IMO, having all vectors on same node CPUs improves interrupt latency
than distributing among all nodes.


thanks
Ganapat



More information about the Linux-nvme mailing list