Commit f0be1636 authored by Jim Harris's avatar Jim Harris Committed by Changpeng Liu
Browse files

nvme: check is_enabled flag at common layer

parent 4aac975b
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -1939,15 +1939,11 @@ nvme_pcie_qpair_submit_request(struct spdk_nvme_qpair *qpair, struct nvme_reques

	tr = TAILQ_FIRST(&pqpair->free_tr);

	if (tr == NULL || !qpair->is_enabled) {
	if (tr == NULL) {
		/*
		 * No tracker is available, or the qpair is disabled due to
		 *  an in-progress controller-level reset.
		 *
		 * Put the request on the qpair's request queue to be
		 *  processed when a tracker frees up via a command
		 *  completion or when the controller reset is
		 *  completed.
		 *  completion.
		 */
		STAILQ_INSERT_TAIL(&qpair->queued_req, req, stailq);
		goto exit;
+9 −1
Original line number Diff line number Diff line
@@ -588,7 +588,15 @@ nvme_qpair_submit_request(struct spdk_nvme_qpair *qpair, struct nvme_request *re
		req->submit_tick = 0;
	}

	if (spdk_likely(qpair->is_enabled)) {
		return nvme_transport_qpair_submit_request(qpair, req);
	} else {
		/* The controller is being reset - queue this request and
		 *  submit it later when the reset is completed.
		 */
		STAILQ_INSERT_TAIL(&qpair->queued_req, req, stailq);
		return 0;
	}
}

void
+3 −4
Original line number Diff line number Diff line
@@ -1558,11 +1558,10 @@ nvme_rdma_qpair_submit_request(struct spdk_nvme_qpair *qpair,
	assert(req != NULL);

	rdma_req = nvme_rdma_req_get(rqpair);
	if (!rdma_req || !qpair->is_enabled) {
	if (!rdma_req) {
		/*
		 * No rdma_req is available, or the qpair is disabled due to
		 *  an in-progress reset.  Queue the request to be processed
		 *  later.
		 * No rdma_req is available, so queue the request to be
		 *  processed later.
		 */
		STAILQ_INSERT_TAIL(&qpair->queued_req, req, stailq);
		return 0;
+2 −3
Original line number Diff line number Diff line
@@ -704,10 +704,9 @@ nvme_tcp_qpair_submit_request(struct spdk_nvme_qpair *qpair,
	assert(req != NULL);

	tcp_req = nvme_tcp_req_get(tqpair);
	if (!tcp_req || !qpair->is_enabled) {
	if (!tcp_req) {
		/*
		 * No tcp_req is available, or the qpair is currently disabled
		 *  due to an in-progress reset.  Queue the request to be
		 * No tcp_req is available, so queue the request to be
		 *  processed later.
		 */
		STAILQ_INSERT_TAIL(&qpair->queued_req, req, stailq);