Spdk/lib/nvmf
Ziye Yang 27d47b9a10 nvmf: make the qpair disconnnect in the right order.
Reason: Initiator sends the qpair deletion in wrong order.
The correct order should be all io qpairs deletion and then
the admin qpair deletion. However, nvme perf does not follow
this since we did not catch ctrlr + c. If we catch ctrlr + c,
we need to use the spdk app framework, or other methods. We should
support this in another patch.

Morever, to prevent the incorrect behavior causing the coredump
of target, we need also consider such case in our NVMe-oF target
design. And this patch, can solve this issue, it will defer the
admin qpair deletion when there are still active io qpairs.

Change-Id: Iec9b88c1d6254f36963c92402ebfe8bd99abaea5
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
Reviewed-on: https://review.gerrithub.io/407771
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2018-04-17 01:58:36 -04:00
..
ctrlr_bdev.c nvmf: fix non-deallocate Dataset Management status 2018-04-10 15:44:38 -04:00
ctrlr_discovery.c nvmf: add support of hotplug for nvmf. 2017-12-15 16:14:02 -05:00
ctrlr.c nvmf: make the qpair disconnnect in the right order. 2018-04-17 01:58:36 -04:00
Makefile build: remove $(ENV_CFLAGS) where not necessary 2018-01-03 12:05:59 -05:00
nvmf_internal.h nvmf: Queue incoming requests to a paused subsystem 2018-04-05 12:54:31 -04:00
nvmf.c nvmf: Detect bdev additions and removals on subsystem resume 2018-04-06 18:41:59 -04:00
rdma.c nvmf: reduce log level of informational messages 2018-04-05 12:06:45 -04:00
request.c nvmf: Queue incoming requests to a paused subsystem 2018-04-05 12:54:31 -04:00
subsystem.c nvmf: use standard types in spdk_nvmf_valid_nqn() 2018-04-05 15:57:34 -04:00
transport.c nvmf: Remove poll group from controller 2017-12-12 15:01:17 -05:00
transport.h nvmf: Remove poll group from controller 2017-12-12 15:01:17 -05:00