Spdk/lib/nvmf
Shuhei Matsumoto 785d10b5c7 nvmf: Make ANA state not only per subsystem listener but also per ANA group
Refine ANA state from per subsystem listener to per subsystem listener
per ANA group.

Add an array of ANA state per ANA group to subsystem listener. The array is
indexed by ANA group ID - 1.

Then in I/O paths, we get ANA state by
    ctrlr->listener->ana_state[ns->anagrpid - 1].

The NVMe specification indicates the existence of NVM subsystem specific
ANA state when FFFFFFFFh is specified as NSID for the Get Features
and the Set Features commands. For these, we return the optimized state.

Update the nvmf_subsystem_get_listeners RPC to return all ANA states
of the underlying ANA groups. The nvmf_subsystem_get_listeners RPC is
not matured and not used in the test code yet. Hence compatibility is
not high priority.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: Ia2d4d5361ac01236f595c22765fd35e4c5fdee0e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9064
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2021-09-06 09:47:01 +00:00
..
ctrlr_bdev.c nvmf: In zcopy, delay setting req->data until end of start operation 2021-07-27 14:53:39 +00:00
ctrlr_discovery.c nvmf: remove a bdev_module.h #include 2021-05-11 11:57:01 +00:00
ctrlr.c nvmf: Make ANA state not only per subsystem listener but also per ANA group 2021-09-06 09:47:01 +00:00
fc_ls.c nvmf/fc: Handle out of order fused commands. 2021-01-14 16:18:25 +00:00
fc.c lib/trace: don't pass zero as a non-argument 2021-06-28 16:17:35 +00:00
Makefile nvmf/vfio-user: don't set RESERVATION support for vfio-user transport 2021-08-25 07:27:10 +00:00
nvmf_fc.h nvmf/fc: Add flag to differentiate LS queue and non LS queue. 2021-01-14 16:18:25 +00:00
nvmf_internal.h nvmf: Make ANA state not only per subsystem listener but also per ANA group 2021-09-06 09:47:01 +00:00
nvmf_rpc.c nvmf: Make ANA state not only per subsystem listener but also per ANA group 2021-09-06 09:47:01 +00:00
nvmf.c nvmf: Add ana_reporting parameter into JSON config dump 2021-08-20 07:29:16 +00:00
rdma.c lib/nvmf: removed deprecated stats API 2021-07-23 07:10:03 +00:00
spdk_nvmf.map lib/nvmf : Added support for ZCOPY 2021-07-23 08:34:43 +00:00
subsystem.c nvmf: Make ANA state not only per subsystem listener but also per ANA group 2021-09-06 09:47:01 +00:00
tcp.c lib/nvmf : Fixed bad response if response is sent prior to _nvmf_request_complete being called 2021-09-03 08:07:55 +00:00
transport.c lib/nvmf: removed deprecated stats API 2021-07-23 07:10:03 +00:00
transport.h nvmf: Allow nvmf_transport_qpair_fini to complete asynchronously. 2020-11-18 11:28:02 +00:00
vfio_user.c nvmf/vfio-user: check ADMIN command PSDT field 2021-09-03 08:08:13 +00:00