aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/nvme.h
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/linux/nvme.h
parentnvmet: remove redundant local variable (diff)
downloadwireguard-linux-38dabe210fbab4e7e8a03670ab3ba42f247ea08f.tar.xz
wireguard-linux-38dabe210fbab4e7e8a03670ab3ba42f247ea08f.zip
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/linux/nvme.h')
-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 */