Spdk/lib/nvmf
Shuhei Matsumoto 68f1681771 lib/nvmf: Control I/O and some admin commands according to ANA state
For I/O commands, block them if ANA state is inaccessible, persistent
loss, or change.

For Identify command, clear capacity field (nuse) to 0 if ANA state
is inaccessible or persistent loss.

For Get Features command, block features, error recovery, write
atomicity normal, reservation notification mask, and reservation
persistence if ANA state is inaccessible, persistent loss, or change.

For Get Log Page command, error information page does not return
any data yet, and hence there is no change.

For Set Features command, if ANA state is inaccessible or change,
block the command if NSID is 0xFFFFFFFF or if feature is error recovery,
write atomicity normal, reservation notification mask, or reservation
persistence, or if ANA state is persistent loss, block the command.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: I15dd593227e451aa2247c53da42b6acad1757907
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4043
Community-CI: Mellanox Build Bot
Community-CI: Broadcom CI
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
2020-09-04 08:14:18 +00:00
..
ctrlr_bdev.c lib/nvmf: Support custom admin cmd handler for abort 2020-07-24 07:25:47 +00:00
ctrlr_discovery.c lib/nvmf: remove spdk_ and _spdk prefix from functions. 2020-06-01 09:21:14 +00:00
ctrlr.c lib/nvmf: Control I/O and some admin commands according to ANA state 2020-09-04 08:14:18 +00:00
fc_ls.c nvmf: Remove new_qpair callback from transport accept function pointer 2020-06-18 07:29:41 +00:00
fc.c lib/nvmf: Add nvmf_transport_qpair_abort_request() 2020-07-14 07:54:42 +00:00
Makefile lib/nvmf: make spdk_nvmf_qpair_disconnect thread safe. 2020-08-12 07:51:15 +00:00
nvmf_fc.h nvmf: Remove new_qpair callback from transport accept function pointer 2020-06-18 07:29:41 +00:00
nvmf_internal.h lib/nvmf: Add ANA state to struct spdk_nvmf_subsystem_listener 2020-09-04 08:14:18 +00:00
nvmf_rpc.c rpc/nvmf: Add ana_reporting parameter to nvmf_create_subsystem RPC 2020-08-21 08:22:40 +00:00
nvmf.c nvmf: Stop pg poller when all qpairs are destroyed 2020-09-01 07:51:45 +00:00
rdma.c lib/nvmf: Add trid to struct spdk_nvmf_qpair 2020-09-04 08:14:18 +00:00
spdk_nvmf.map lib/nvmf: Optionalize ANA reporting feature 2020-08-21 08:22:40 +00:00
subsystem.c lib/nvmf: Add ANA state to struct spdk_nvmf_subsystem_listener 2020-09-04 08:14:18 +00:00
tcp.c lib/nvmf: Add trid to struct spdk_nvmf_qpair 2020-09-04 08:14:18 +00:00
transport.c nvmf: fix the associate timeout value 2020-08-21 08:23:45 +00:00
transport.h lib/nvmf: Add nvmf_transport_qpair_abort_request() 2020-07-14 07:54:42 +00:00