]> git.baikalelectronics.ru Git - kernel.git/commit
NVMe: per-cpu io queues
authorKeith Busch <keith.busch@intel.com>
Mon, 24 Mar 2014 16:46:25 +0000 (10:46 -0600)
committerMatthew Wilcox <matthew.r.wilcox@intel.com>
Thu, 10 Apr 2014 21:03:15 +0000 (17:03 -0400)
commit7939f433db559e002510d7d0d1c39e26c0afe0b0
tree03a71487b6015ccca44d00053b1643193926f04f
parent3f6becfd2f10c22e5cfa17b5131144fe595fc230
NVMe: per-cpu io queues

The device's IO queues are associated with CPUs, so we can use a per-cpu
variable to map the a qid to a cpu. This provides a convienient way
to optimally assign queues to multiple cpus when the device supports
fewer queues than the host has cpus. The previous implementation may
have assigned these poorly in these situations. This patch addresses
this by sharing queues among cpus that are "close" together and should
have a lower lock contention penalty.

Signed-off-by: Keith Busch <keith.busch@intel.com>
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
drivers/block/nvme-core.c
include/linux/nvme.h