Commit 59f0d22e authored by Seth Howell's avatar Seth Howell Committed by Jim Harris
Browse files

rdma: Fix misordered assert and decrement.



In the error path, we were first decrementing a variable and then
asserting that it must be >0. These operations should occur in the
opposite order.

Change-Id: I6cec544faf17bb75cbfca3d3a3c173dc5db14f99
Signed-off-by: default avatarSeth Howell <seth.howell@intel.com>
Reviewed-on: https://review.gerrithub.io/c/446440


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avataryidong0635 <dongx.yi@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
parent 756ce464
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2784,9 +2784,9 @@ spdk_nvmf_rdma_poller_poll(struct spdk_nvmf_rdma_transport *rtransport,
				rqpair = SPDK_CONTAINEROF(rdma_req->req.qpair, struct spdk_nvmf_rdma_qpair, qpair);

				SPDK_ERRLOG("data=%p length=%u\n", rdma_req->req.data, rdma_req->req.length);
				assert(rdma_req->num_outstanding_data_wr > 0);
				rdma_req->num_outstanding_data_wr--;
				if (rdma_req->data.wr.opcode == IBV_WR_RDMA_READ) {
					assert(rdma_req->num_outstanding_data_wr > 0);
					rqpair->current_read_depth--;
					if (rdma_req->num_outstanding_data_wr == 0) {
						rdma_req->state = RDMA_REQUEST_STATE_COMPLETED;