nvme/pci Limit write queue sizes to possible cpus
The driver can never use more queues of any type than the number of possible CPUs, so a higher value causes the driver to allocate more memory for IO queues than it could ever use. Limit the parameter at module load time to the number of possible cpus. Reviewed-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Keith Busch <kbusch@kernel.org>
This commit is contained in:
		
							parent
							
								
									3f68baf706
								
							
						
					
					
						commit
						17c3316734
					
				| @ -3138,6 +3138,9 @@ static int __init nvme_init(void) | ||||
| 	BUILD_BUG_ON(sizeof(struct nvme_create_sq) != 64); | ||||
| 	BUILD_BUG_ON(sizeof(struct nvme_delete_queue) != 64); | ||||
| 	BUILD_BUG_ON(IRQ_AFFINITY_MAX_SETS < 2); | ||||
| 
 | ||||
| 	write_queues = min(write_queues, num_possible_cpus()); | ||||
| 	poll_queues = min(poll_queues, num_possible_cpus()); | ||||
| 	return pci_register_driver(&nvme_driver); | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user