Commit fc0defc0 authored by Aleksey Marchuk's avatar Aleksey Marchuk Committed by Jim Harris
Browse files

nvmf/rdma: Remove rqpair::qd



There is a similar member in generic qpair structure, one
in RMDA is redundant.
Move ibv_in_error_state for better packing

Change-Id: I35197c722f7bf1eae492fb3978008d34371aeee1
Signed-off-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Reviewed-on: https://review.spdk.io/c/spdk/spdk/+/26348


Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK Automated Test System <spdkbot@gmail.com>
Reviewed-by: default avatarJim Harris <jim.harris@nvidia.com>
Reviewed-by: default avatarKonrad Sztyber <ksztyber@nvidia.com>
parent f4c10e1a
Loading
Loading
Loading
Loading
+5 −12
Original line number Diff line number Diff line
@@ -350,6 +350,8 @@ struct spdk_nvmf_rdma_qpair {
	/* The maximum number of SGEs per WR on the recv queue */
	uint32_t				max_recv_sge;

	bool					ibv_in_error_state;

	struct spdk_nvmf_rdma_resources		*resources;

	STAILQ_HEAD(, spdk_nvmf_rdma_request)	pending_rdma_read_queue;
@@ -358,11 +360,6 @@ struct spdk_nvmf_rdma_qpair {

	STAILQ_HEAD(, spdk_nvmf_rdma_request)	pending_rdma_send_queue;

	/* Number of requests not in the free state */
	uint32_t				qd;

	bool					ibv_in_error_state;

	RB_ENTRY(spdk_nvmf_rdma_qpair)		node;

	STAILQ_ENTRY(spdk_nvmf_rdma_qpair)	recv_link;
@@ -855,14 +852,14 @@ nvmf_rdma_qpair_destroy(struct spdk_nvmf_rdma_qpair *rqpair)

	spdk_trace_record(TRACE_RDMA_QP_DESTROY, 0, 0, (uintptr_t)rqpair);

	if (rqpair->qd != 0) {
	if (rqpair->qpair.queue_depth != 0) {
		struct spdk_nvmf_qpair *qpair = &rqpair->qpair;
		struct spdk_nvmf_rdma_transport	*rtransport = SPDK_CONTAINEROF(qpair->transport,
				struct spdk_nvmf_rdma_transport, transport);
		struct spdk_nvmf_rdma_request *req;
		uint32_t i, max_req_count = 0;

		SPDK_WARNLOG("Destroying qpair when queue depth is %d\n", rqpair->qd);
		SPDK_WARNLOG("Destroying qpair when queue depth is %d\n", rqpair->qpair.queue_depth);

		if (rqpair->srq == NULL) {
			nvmf_rdma_dump_qpair_contents(rqpair);
@@ -880,7 +877,7 @@ nvmf_rdma_qpair_destroy(struct spdk_nvmf_rdma_qpair *rqpair)
				nvmf_rdma_request_process(rtransport, req);
			}
		}
		assert(rqpair->qd == 0);
		assert(rqpair->qpair.queue_depth == 0);
	}

	if (rqpair->poller) {
@@ -2003,7 +2000,6 @@ _nvmf_rdma_request_free(struct spdk_nvmf_rdma_request *rdma_req,
		rdma_req->fused_pair = NULL;
	}
	memset(&rdma_req->req.dif, 0, sizeof(rdma_req->req.dif));
	rqpair->qd--;

	STAILQ_INSERT_HEAD(&rqpair->resources->free_queue, rdma_req, state_link);
	rqpair->qpair.queue_depth--;
@@ -3448,9 +3444,6 @@ nvmf_rdma_qpair_process_pending(struct spdk_nvmf_rdma_transport *rtransport,

		if (rqpair->srq != NULL) {
			rdma_req->req.qpair = &rdma_req->recv->qpair->qpair;
			rdma_req->recv->qpair->qd++;
		} else {
			rqpair->qd++;
		}

		rdma_req->receive_tsc = rdma_req->recv->receive_tsc;