numam-spdk/lib/nvmf
Ziye Yang 08273e77de tcp: Fix no tcp_req issue while using async writev later.
Purpose: But if we use asynchronous writev
for pdu sending, the call_back of writev may occur
after the new data coming. So it means that the
free tcp request may not be available.
So we use the strategy to check the request status
in TCP_REQUEST_STATE_TRANSFERRING_CONTROLLER_TO_HOST.

So the strategy is checking the state_cntr of all the
reqs in TCP_REQUEST_STATE_TRANSFERRING_CONTROLLER_TO_HOST
state.
1 If the state_cntr > 0, we should queue
the new request.
2 If the statec_cntr == 0, it means that
there is no available slot for the new tcp request
, i.e., the new nvme command comming from the initiator.
If we receive this, it means that the initiator sends more
requests,and we should reject it.

Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
Change-Id: Ifbeb510e669082cb7b80faf2e7987075af31d176
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/472912
Community-CI: Broadcom SPDK FC-NVMe CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
2019-11-08 22:17:42 +00:00
..
ctrlr_bdev.c nvme: allow setting of completion queue CDW0 2019-10-24 18:02:38 +00:00
ctrlr_discovery.c nvmf: don't keep a global discovery log page. 2019-09-03 00:30:59 +00:00
ctrlr.c nvmf/ctrlr: Disable in-capsule data transfer for RDMA controllers when dif_insert_or_strip is enabled 2019-10-11 15:36:19 +00:00
fc_ls.c nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00
fc.c nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00
Makefile lib/nvmf: extract RPCs from the subsystem directory 2019-08-21 17:20:28 +00:00
nvmf_fc.h nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00
nvmf_internal.h nvmf/fc: Add listen address support in FC transport 2019-10-17 16:29:04 +00:00
nvmf_rpc.c lib/nvmf: add the nvmf_get_targets rpc. 2019-09-26 15:21:44 +00:00
nvmf.c nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00
rdma.c rdma: Use WRs chaining when DIF is enabled 2019-10-18 17:28:52 +00:00
subsystem.c nvmf/fc: Add listen address support in FC transport 2019-10-17 16:29:04 +00:00
tcp.c tcp: Fix no tcp_req issue while using async writev later. 2019-11-08 22:17:42 +00:00
transport.c nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00
transport.h nvmf: Add context parameter to new_qpair() callback 2019-10-17 16:29:36 +00:00