Spdk/lib/nvme
Shuhei Matsumoto 09c7c76876 nvme: Set I/O qpairs to failed only if reset is synchronous
For PCIe transport, we need to stop any activity of the controller
before deleting I/O qpair resource in a controller reset sequence.

However, we set I/O qpairs to failed before disabling a controller.
In the NVMe bdev module, this caused disconnected qpair callback to
delete I/O qpairs before disabling the controller.

Hence, change the code slightly to set I/O qpairs to failed only if
reset is synchronous to keep backward compatibility.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: Ica71aad0a1dabce45616dfdfff5f11b07131bbd1
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12736
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Michael Haeuptle <michaelhaeuptle@gmail.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-05-20 09:17:28 +00:00
..
Makefile so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
nvme_ctrlr_cmd.c spelling: lib 2021-12-03 08:12:55 +00:00
nvme_ctrlr_ocssd_cmd.c nvme: Do not track a separate active namespace list 2022-01-14 08:35:10 +00:00
nvme_ctrlr.c nvme: Set I/O qpairs to failed only if reset is synchronous 2022-05-20 09:17:28 +00:00
nvme_cuse.c nvme: Add Check for fuse request size 2022-01-14 11:10:13 +00:00
nvme_cuse.h lib/nvme: add RPC for interacting with CUSE devices 2019-10-24 23:43:59 +00:00
nvme_discovery.c nvme: read full discovery page after reading header 2022-03-28 17:10:04 +00:00
nvme_fabric.c nvme: allocate extra request for fabrics connect 2022-02-14 15:29:39 +00:00
nvme_internal.h nvme: Add helper functions to do a Controller Level Reset (Set CC.EN to 0) 2022-05-19 08:23:57 +00:00
nvme_io_msg.c nvme: only process io_msg in primary process 2021-04-22 01:06:02 +00:00
nvme_io_msg.h spelling: lib 2021-12-03 08:12:55 +00:00
nvme_ns_cmd.c nvme: Add functions spdk_nvme_ns_cmd_readv/writev_ext 2021-08-20 07:26:10 +00:00
nvme_ns_ocssd_cmd.c nvme: save separate metadata size to nvme request 2020-04-02 07:02:38 +00:00
nvme_ns.c nvme: Remove nvme_ns_update 2021-12-20 08:49:41 +00:00
nvme_opal_internal.h nvme/opal: deprecate spdk_opal_supported() 2020-05-20 14:16:44 +00:00
nvme_opal.c spelling: lib 2021-12-03 08:12:55 +00:00
nvme_pcie_common.c nvme: Do Controller Level Reset when disconnecting adminq for PCIe 2022-05-19 08:23:57 +00:00
nvme_pcie_internal.h nvme/pcie: Fix doorbell delay with fuse operations 2022-04-27 07:36:20 +00:00
nvme_pcie.c nvme/pcie: increase min admin queue size to 256 2022-04-19 08:18:34 +00:00
nvme_poll_group.c nvme: Add functions to get/free poll group statistics 2021-04-13 21:30:52 +00:00
nvme_qpair.c nvme: Fix keyed/unkeyd SGL nvme cmd dump 2022-05-17 20:11:43 +00:00
nvme_quirks.c nvme/quirks: don't use SGL for Huawei SSDs 2022-05-02 20:00:35 +00:00
nvme_rdma.c nvme: Do not abort transport commands when disconnecting a qpair 2022-05-19 08:23:57 +00:00
nvme_tcp.c nvme: Do not abort transport commands when disconnecting a qpair 2022-05-19 08:23:57 +00:00
nvme_transport.c nvme: Do not abort transport commands when disconnecting a qpair 2022-05-19 08:23:57 +00:00
nvme_vfio_user.c nvme/pcie: increase min admin queue size to 256 2022-04-19 08:18:34 +00:00
nvme_zns.c lib/nvme: NVMe ZNS - Zone Descriptor Extension support 2021-09-16 07:21:40 +00:00
nvme.c nvme: Prioritize user provided trstring for transport lookup 2022-03-31 10:31:20 +00:00
spdk_nvme.map nvme: add spdk_nvme_ctrlr_get_discovery_log_page API 2021-12-20 18:12:41 +00:00