summaryrefslogtreecommitdiffstats
path: root/drivers/nvme
diff options
context:
space:
mode:
authorKeith Busch <keith.busch@intel.com>2016-05-13 12:38:09 -0600
committerJens Axboe <axboe@fb.com>2016-05-17 17:14:21 -0600
commit2800b8e7d9dfca1fd9d044dcf7a046b5de5a7239 (patch)
tree94ebf9f41b80b80f06faeacb234ec8673b471e29 /drivers/nvme
parent24b9f0cf00c8e8df29a4ddfec8c139ad62753113 (diff)
downloadlinux-stable-2800b8e7d9dfca1fd9d044dcf7a046b5de5a7239.tar.gz
linux-stable-2800b8e7d9dfca1fd9d044dcf7a046b5de5a7239.tar.bz2
linux-stable-2800b8e7d9dfca1fd9d044dcf7a046b5de5a7239.zip
NVMe: Allocate queues only for online cpus
The driver previously requested allocating queues for the total possible number of CPUs so that blk-mq could rebalance these if CPUs were added after initialization. The number of hardware contexts can now be changed at runtime, so we only need to allocate the number of online queues since we can add more later. Suggested-by: Jeff Lien <jeff.lien@hgst.com> Signed-off-by: Keith Busch <keith.busch@intel.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/nvme')
-rw-r--r--drivers/nvme/host/pci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
index 0f093f14d348..3c7b625a5e56 100644
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@ -1394,7 +1394,7 @@ static int nvme_setup_io_queues(struct nvme_dev *dev)
struct pci_dev *pdev = to_pci_dev(dev->dev);
int result, i, vecs, nr_io_queues, size;
- nr_io_queues = num_possible_cpus();
+ nr_io_queues = num_online_cpus();
result = nvme_set_queue_count(&dev->ctrl, &nr_io_queues);
if (result < 0)
return result;