nvmet: add minimal ANA support
authorChristoph Hellwig <hch@lst.de>
Thu, 19 Jul 2018 14:35:20 +0000 (07:35 -0700)
committerChristoph Hellwig <hch@lst.de>
Fri, 27 Jul 2018 17:13:02 +0000 (19:13 +0200)
commit72efd25dcf4f6310e9e6fa85620aa443b27c23fe
tree0505847a47806f6d0ac9feed9ae081fe8d55c381
parent793c7cfce02ce88b7bd67d43834c052d16c096e3
nvmet: add minimal ANA support

Add support for Asynchronous Namespace Access as specified in NVMe 1.3
TP 4004.

Just add a default ANA group 1 that is optimized on all ports.  This is
(and will remain) the default assignment for any namespace not epxlicitly
assigned to another ANA group.  The ANA state can be manually changed
through the configfs interface, including the change state.

Includes fixes and improvements from Hannes Reinecke.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
drivers/nvme/target/admin-cmd.c
drivers/nvme/target/configfs.c
drivers/nvme/target/core.c
drivers/nvme/target/nvmet.h