summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorKeith Busch <keith.busch@intel.com>2015-02-03 11:21:42 -0700
committerKeith Busch <keith.busch@intel.com>2015-02-19 16:15:36 -0700
commitb3fffdefabab266ae5176a136d93b6670b07bb30 (patch)
treefcfc462210dc041f7341f959799174d95ce83c83 /include
parent4f1982b4e262c45475a91b4253e9bc7f7c991c13 (diff)
downloadop-kernel-dev-b3fffdefabab266ae5176a136d93b6670b07bb30.zip
op-kernel-dev-b3fffdefabab266ae5176a136d93b6670b07bb30.tar.gz
NVMe: Register management handle under nvme class
This creates a new class type for nvme devices to register their management character devices with. This is so we do not rely on miscdev to provide enough minors for as many nvme devices some people plan to use. The previous limit was approximately 60 NVMe controllers, depending on the platform and kernel. Now the limit is 1M, which ought to be enough for anybody. Since we have a new device class, it makes sense to attach the block devices under this as well, so part of this patch moves the management handle initialization prior to the namespaces discovery. Signed-off-by: Keith Busch <keith.busch@intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nvme.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/include/linux/nvme.h b/include/linux/nvme.h
index 1f062a9..383d495 100644
--- a/include/linux/nvme.h
+++ b/include/linux/nvme.h
@@ -17,7 +17,6 @@
#include <uapi/linux/nvme.h>
#include <linux/pci.h>
-#include <linux/miscdevice.h>
#include <linux/kref.h>
#include <linux/blk-mq.h>
@@ -89,7 +88,7 @@ struct nvme_dev {
struct nvme_bar __iomem *bar;
struct list_head namespaces;
struct kref kref;
- struct miscdevice miscdev;
+ struct device *device;
work_func_t reset_workfn;
struct work_struct reset_work;
char name[12];
OpenPOWER on IntegriCloud