summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorKeith Busch <keith.busch@intel.com>2017-11-07 15:13:10 -0700
committerJens Axboe <axboe@kernel.dk>2017-11-10 19:53:25 -0700
commit38dabe210fbab4e7e8a03670ab3ba42f247ea08f (patch)
tree18928cb8fff987712a2b1a0d1ef7ee7d549fbd8f /include
parent4185f25acbc2a191341c7d8cf51e449698eceb06 (diff)
downloadlinux-38dabe210fbab4e7e8a03670ab3ba42f247ea08f.tar.gz
nvme: centralize AEN defines
All the transports were unnecessarilly duplicating the AEN request
accounting. This patch defines everything in one place.

Signed-off-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Guan Junxiong <guanjunxiong@huawei.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nvme.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/nvme.h b/include/linux/nvme.h
index fd1d4508a612..89ffa7eed2fd 100644
--- a/include/linux/nvme.h
+++ b/include/linux/nvme.h
@@ -90,6 +90,14 @@ enum {
 };
 
 #define NVME_AQ_DEPTH		32
+#define NVME_NR_AEN_COMMANDS	1
+#define NVME_AQ_BLK_MQ_DEPTH	(NVME_AQ_DEPTH - NVME_NR_AEN_COMMANDS)
+
+/*
+ * Subtract one to leave an empty queue entry for 'Full Queue' condition. See
+ * NVM-Express 1.2 specification, section 4.1.2.
+ */
+#define NVME_AQ_MQ_TAG_DEPTH	(NVME_AQ_BLK_MQ_DEPTH - 1)
 
 enum {
 	NVME_REG_CAP	= 0x0000,	/* Controller Capabilities */