Spdk/test/unit/lib/nvme
Alexey Marchuk bc36528cda nvme/tcp: Process poll_group when waiting for icresp
A preparation step for enabling zero copy in NVMEoF TCP initiator.
Since nvme_tcp_qpair_process_completions doesn't process poll
group, we can't get asycn notification from kernel.

1. Add a qpair to poll group before we send icreq in order to be able
to process buffer reclaim notification.

2. Check if qpair is connected to a poll group and call
nvme_tcp_poll_group_process_completions instead of
nvme_tcp_qpair_process_completions when waiting for icresp

3. Add processing of poll group to nvme_wait_for_completion_timeout
and nvme_wait_for_completion_robust_lock since they are used to
process FABRIC_CONNECT command

Change-Id: I38d2d9496bca8d0cd72e44883df2df802e31a87d
Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4208
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2020-09-29 09:35:47 +00:00
..
nvme_ctrlr_cmd.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
nvme_ctrlr_ocssd_cmd.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
nvme_ctrlr.c lib/nvme: Add an internal API nvme_wait_for_completion_robust_lock_timeout 2020-09-25 11:42:44 +00:00
nvme_ns_cmd.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
nvme_ns_ocssd_cmd.c ut: make use of CUnit macro to reduce duplications 2020-04-02 14:50:12 +00:00
nvme_ns.c nvme: add a csi parameter to nvme_ctrlr_cmd_identify() 2020-09-22 11:39:53 +00:00
nvme_pcie.c lib/nvme: remove spdk prefix from internal headers. 2020-06-01 13:07:30 +00:00
nvme_poll_group.c lib/nvme: switch poll group to use connect/disconnect semantics. 2020-04-22 19:06:26 +00:00
nvme_qpair.c lib/nvme: fix mem leak in req submit. 2020-09-02 07:38:38 +00:00
nvme_quirks.c env: add spdk_pci_id->class_id 2020-07-23 20:48:47 +00:00
nvme_rdma.c nvme/rdma: Check that SGL descriptors fit into ICD 2020-09-16 07:58:13 +00:00
nvme_tcp.c nvme/tcp: Process poll_group when waiting for icresp 2020-09-29 09:35:47 +00:00
nvme_uevent.c nvme: read all uevents 2020-08-24 07:38:33 +00:00
nvme.c nvme/tcp: Process poll_group when waiting for icresp 2020-09-29 09:35:47 +00:00
Makefile test/unit: add poll_group unit tests. 2020-04-07 08:38:40 +00:00