Spdk/test/unit/lib/bdev
Shuhei Matsumoto cb8aa8abc5 bdev/nvme: Not try freeing qpair when it is NULL, and add test scenario
The API spdk_nvme_ctrlr_free_io_qpair() returns immediately if the
passed qpair is NULL, but calling spdk_nvme_ctrlr_free_io_qpair()
with NULL should be avoided.

This patch cleans up the code to ensure that nvme_ch->qpair is NULL if
disconnected and spdk_nvme_ctrlr_free_io_qpair() is called only if
nvme_ch->qpair is not NULL.

Then add a test scenario that two reset requests were submitted
simultaneously and the first reset request failed and then the second
reset request also failed. This verifies the refactoring done in the
next patch.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: Iae461f7f826b0e1a4607a17e528c04a642242d6e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7041
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2021-03-30 11:43:24 +00:00
..
bdev_zone.c bdev/zone: add support for max zone append size 2021-03-29 10:17:45 +00:00
bdev.c lib/bdev: move to spdk_bdev_open_ext() 2021-03-05 08:33:45 +00:00
compress.c modules/crypto/compress: changes to support DPDK mbuf changes 2021-01-15 08:30:01 +00:00
crypto.c modules/crypto/compress: changes to support DPDK mbuf changes 2021-01-15 08:30:01 +00:00
gpt module/bdev_gpt: remove spdk prefix from static/internal functions. 2020-05-15 07:58:03 +00:00
mt test: add some missing stubs 2020-11-02 11:23:21 +00:00
nvme bdev/nvme: Not try freeing qpair when it is NULL, and add test scenario 2021-03-30 11:43:24 +00:00
part.c lib/bdev: move to spdk_bdev_part_base_construct_ext() 2021-03-09 08:54:53 +00:00
pmem remove unneeded spdk_internal/thread.h includes 2020-12-10 14:38:04 +00:00
raid test: Use PRId64 for portability 2020-11-19 09:53:05 +00:00
scsi_nvme.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
vbdev_lvol.c bdev/lvol: Pass bdev name instead of bdev pointer to vbdev_lvs_create 2020-10-20 08:52:29 +00:00
vbdev_zone_block.c test: Use PRId64 for portability 2020-11-19 09:53:05 +00:00
Makefile ut/bdev_ocssd: Move bdev_ocssd_ut from bdev directory to bdev/nvme directory 2021-02-09 11:29:53 +00:00