Spdk/test/unit/lib/nvme
Changpeng Liu e27421b344 nvme: fix req leaks
There are many req leaks when a controller failure
occurs during submitting IO. It must free all of
the children before freeing the parent req.

If a part of the child req has been sent to the back end
and a part of the child req fails, removes the failed req
from the parent req and the parent req must be retained,
freeing the parent req after all of the submitted reqs return.

Change-Id: Ieb5423fd19c9bb0420f154b3cfc17918c2b80748
Signed-off-by: Huiming Xie <xiehuiming@huawei.com>
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/461734
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
2019-07-22 04:15:34 +00:00
..
nvme_ctrlr_cmd.c nvme: add Get/Set Feature wrappers with NSID 2018-06-12 17:59:33 +00:00
nvme_ctrlr_ocssd_cmd.c ocssd: nvme driver public API extension for Open-Channel 2018-06-12 17:59:33 +00:00
nvme_ctrlr.c ut/nvme: switch to spdk_*malloc(). 2019-07-16 10:51:47 +00:00
nvme_ns_cmd.c ut/nvme: switch to spdk_*malloc(). 2019-07-16 10:51:47 +00:00
nvme_ns_ocssd_cmd.c nvme: assign qpair when req is allocated 2019-06-04 00:01:35 +00:00
nvme_ns.c nvme: add helper to wait for internal commands 2018-05-28 01:43:55 +00:00
nvme_pcie.c nvme: add functions to pretty-print commands and completions 2019-07-15 07:47:03 +00:00
nvme_qpair.c nvme: fix req leaks 2019-07-22 04:15:34 +00:00
nvme_quirks.c nvme: add debug logs for matched quirks 2018-02-23 10:07:39 -05:00
nvme_rdma.c test/unit: remove unnecessary mock definitions 2019-01-13 00:48:20 +00:00
nvme_tcp.c nvme/tcp: Support extended LBA payload in nvme_tcp_build_iovs 2019-07-08 03:33:07 +00:00
nvme.c ut/nvme: switch to spdk_*malloc(). 2019-07-16 10:51:47 +00:00
Makefile nvme/tcp: add unit test to verify the bug in nvmf_tcp_pdu_set_data_buf 2019-07-01 08:28:20 +00:00