+41
−6
Loading
To improve the scalability, poll_group does submits only for active qpairs. Add num_outstanding_reqs to nvme_rdma_qpair and add active_qpairs list to nvme_rdma_poll_group. Then, when the num_outstanding_reqs becomes non-zero, add the qpair to the active_qpairs list. However, we have to ensure resiliency. Even if the num_outstanding_reqs becomes zero, the qpair may have queued IOs. Not to miss queued IOs, remove a qpair from the active_qpairs list only if the num_outstanding_reqs is zero and there is no queued IOs. As we did in a previous patch, we use prev pointer to check if qpair is in the active list or not. Signed-off-by:Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: Ic9cbf2718554623267d4bc7c5364514ce66d5cc0 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18850 Reviewed-by:
Ben Walker <ben@nvidia.com> Reviewed-by:
Aleksey Marchuk <alexeymar@nvidia.com> Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com>