Spdk/lib/nvme
Shuhei Matsumoto c3d0a83347 nvme/rdma: Move post WRs on send/recv queue after poll CQ
If nvme_rdma_qpair_submit_sends() returns -ENOMEM,
nvme_rdma_qpair_process_completions() returns immediately.
In this case, nvme_rdma_qpair_process_completions() does not
poll CQ.

However, nvme_rdma_qpair_process_completions() can poll CQ even
when there is no free slot in SQ.

Hence move nvme_rdma_qpair_submit_sends() and
nvme_rdma_qpair_submit_recvs() after the loop to poll CQ.

nvme_rdma_qpair_submit_sends() and nvme_rdma_qpair_submit_recvs()
output error log and so checking return code of them is not
necessary and is removed in this patch.

This fixes part of the github issue #1271.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: Icf22879c69c3f84e6b1d91dc061b6f44237eedd1
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1342
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
2020-03-20 08:39:53 +00:00
..
Makefile lib: update so version for multiple libraries. 2020-03-18 08:02:30 +00:00
nvme_ctrlr_cmd.c nvme: export internal security send/receive APIs as public APIs 2020-02-26 09:22:15 +00:00
nvme_ctrlr_ocssd_cmd.c ocssd: hold lock when calling nvme_ctrlr_submit_admin_request 2019-02-15 21:27:58 +00:00
nvme_ctrlr.c nvme: rename is_shutdown flag to is_destructed 2020-03-19 08:52:03 +00:00
nvme_cuse.c nvme/cuse: Don't allocate data buffers from CMB for cuse commands 2020-02-17 10:06:20 +00:00
nvme_cuse.h lib/nvme: add RPC for interacting with CUSE devices 2019-10-24 23:43:59 +00:00
nvme_fabric.c nvme: Don't use stack variable to track request completion 2020-01-27 22:48:18 +00:00
nvme_internal.h nvme: rename is_shutdown flag to is_destructed 2020-03-19 08:52:03 +00:00
nvme_io_msg.c lib/nvme: stop all NVMe io producers on detach 2019-11-28 12:36:58 +00:00
nvme_io_msg.h lib/nvme: stop all NVMe io producers on detach 2019-11-28 12:36:58 +00:00
nvme_ns_cmd.c nvme: Add spdk_nvme_ns_cmd_comparev_with_md function 2020-01-07 12:31:32 +00:00
nvme_ns_ocssd_cmd.c vtophys: add length parameter to the vtophys function 2019-01-09 08:24:59 +00:00
nvme_ns.c bdev/nvme: handle namespace resize event 2020-02-21 09:38:42 +00:00
nvme_opal_internal.h nvme/opal: rename spdk_opal_init_dev() and spdk_opal_close() with construct/destruct suffix 2020-03-11 11:36:08 +00:00
nvme_opal.c nvme/opal: using opal_start_generic_session() directly 2020-03-11 11:36:08 +00:00
nvme_pcie.c nvme: update the comments about using hardware SGL 2020-03-19 08:52:03 +00:00
nvme_qpair.c nvme: fix command specific status code 2020-02-20 09:49:24 +00:00
nvme_quirks.c nvme: add quirk for a minimum io queue size 2019-12-13 11:02:04 +00:00
nvme_rdma.c nvme/rdma: Move post WRs on send/recv queue after poll CQ 2020-03-20 08:39:53 +00:00
nvme_tcp.c lib/nvme: move connect directly into alloc_io_qpair. 2020-03-17 08:23:50 +00:00
nvme_transport.c lib/nvme: move common connect code into transport shim 2020-03-06 10:29:21 +00:00
nvme_uevent.c nvme: add vfio driver parse event 2019-05-29 02:36:41 +00:00
nvme_uevent.h nvme: Add support of hotplug for vfio-attached devices. 2017-12-06 17:04:49 -05:00
nvme.c lib/nvme: Fix scanbuild issue about uninitialized value. 2020-03-19 08:51:05 +00:00