We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent dc7cb80 commit 8d81f2bCopy full SHA for 8d81f2b
drivers/nvme/host/pci.c
@@ -2085,6 +2085,7 @@ static int nvme_setup_irqs(struct nvme_dev *dev, unsigned int nr_io_queues)
2085
.priv = dev,
2086
};
2087
unsigned int irq_queues, this_p_queues;
2088
+ unsigned int nr_cpus = num_possible_cpus();
2089
2090
/*
2091
* Poll queues don't need interrupts, but we need at least one IO
@@ -2095,7 +2096,10 @@ static int nvme_setup_irqs(struct nvme_dev *dev, unsigned int nr_io_queues)
2095
2096
this_p_queues = nr_io_queues - 1;
2097
irq_queues = 1;
2098
} else {
- irq_queues = nr_io_queues - this_p_queues + 1;
2099
+ if (nr_cpus < nr_io_queues - this_p_queues)
2100
+ irq_queues = nr_cpus + 1;
2101
+ else
2102
+ irq_queues = nr_io_queues - this_p_queues + 1;
2103
}
2104
dev->io_queues[HCTX_TYPE_POLL] = this_p_queues;
2105
0 commit comments