Spdk/lib
Alexey Marchuk 1c5444d623 nvmf: Queue Connect command when subsystem is paused
Currently SPDK rejects Connect command when subsystem is not active.
This change allows to queue Connect command and execute it when
the subsystem goes back to active state. To queue the command we
should know subsystem_poll_group, in current implementation
this poll_group is known only when controller is already created.
To get the poll_group for Connect command we can retrive subsystem
subnqn, find subsystem and get poll_group by subsystem->id.

Increment subsystem_poll_group->io_outstanding even for Connect
cmd in order to prevent subsystem change state during the
connection process. Update spdk_nvmf_request_complete -
decrement io_outstanding for Connect cmd.

Fixes #1256

Change-Id: I724abb911696d7234a9c9d27458eba24739b26fd
Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1273
Reviewed-by: Jacek Kalwas <jacek.kalwas@intel.com>
Reviewed-by: <dongx.yi@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2020-04-01 10:22:25 +00:00
..
accel make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
bdev make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
blob lib/blob: move sequential extent page write to the caller 2020-03-24 07:39:47 +00:00
blobfs make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
conf make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
env_dpdk memory.h: move to public headers 2020-03-19 08:50:45 +00:00
env_ocf lib/bdev/ocf: update of ocf library to version 19.06 2019-10-22 17:22:41 +00:00
event lib/event: Add elapsed time of thread to output of framework_get_reactors RPC 2020-03-25 07:52:53 +00:00
ftl make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
ioat memory.h: move to public headers 2020-03-19 08:50:45 +00:00
iscsi lib/iscsi: Use spdk_sn32_lt/gt() to compare two sequence numbers 2020-03-19 08:51:31 +00:00
json make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
jsonrpc make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
log make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
log_rpc make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
lvol make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
nbd make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
net make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
notify make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
nvme nvme/opal: don't store locking range in opal key structure 2020-04-01 01:08:39 +00:00
nvmf nvmf: Queue Connect command when subsystem is paused 2020-04-01 10:22:25 +00:00
reduce make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
rocksdb global: rename copy to accel 2020-02-18 08:05:34 +00:00
rpc make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
rte_vhost make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
scsi make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
sock make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
thread lib/thread: spdk_thread_poll() measures run time per call by reading end TSC 2020-03-25 07:52:53 +00:00
trace make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
ut_mock make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
util pipe: Simplify the pipe code 2020-03-31 07:59:26 +00:00
vhost vhost: refactor process_vq 2020-03-26 08:12:35 +00:00
virtio memory.h: move to public headers 2020-03-19 08:50:45 +00:00
vmd make: rev SO versions individually for libraries. 2020-03-18 08:02:30 +00:00
Makefile global: rename copy to accel 2020-02-18 08:05:34 +00:00