nvme: mv submit_tick assignments to generic qpair code
Move req->submit_tick assignments from specific transports to generic qpair code. Check whether submit_tick has been assigned before doing the actual assignment, because a request may be submitted several times and the original submit_tick shouldn't be covered. Change-Id: I2de8018dc21763eb5a19bb9d48dfbdef764b036e Signed-off-by: lorneli <lorneli@163.com> Reviewed-on: https://review.gerrithub.io/c/444702 Reviewed-by: Ziye Yang <ziye.yang@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-by: Seth Howell <seth.howell5141@gmail.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
parent
0d5cbbed16
commit
815f82b17b
@ -1176,12 +1176,6 @@ nvme_pcie_qpair_submit_tracker(struct spdk_nvme_qpair *qpair, struct nvme_tracke
|
||||
|
||||
req = tr->req;
|
||||
assert(req != NULL);
|
||||
req->timed_out = false;
|
||||
if (spdk_unlikely(pctrlr->ctrlr.timeout_enabled)) {
|
||||
req->submit_tick = spdk_get_ticks();
|
||||
} else {
|
||||
req->submit_tick = 0;
|
||||
}
|
||||
|
||||
pqpair->tr[tr->cid].active = true;
|
||||
|
||||
|
@ -541,6 +541,16 @@ nvme_qpair_submit_request(struct spdk_nvme_qpair *qpair, struct nvme_request *re
|
||||
}
|
||||
}
|
||||
|
||||
/* assign submit_tick before submitting req to specific transport */
|
||||
if (spdk_unlikely(ctrlr->timeout_enabled)) {
|
||||
if (req->submit_tick == 0) { /* req submitted for the first time */
|
||||
req->submit_tick = spdk_get_ticks();
|
||||
req->timed_out = false;
|
||||
}
|
||||
} else {
|
||||
req->submit_tick = 0;
|
||||
}
|
||||
|
||||
return nvme_transport_qpair_submit_request(qpair, req);
|
||||
}
|
||||
|
||||
|
@ -1534,13 +1534,6 @@ nvme_rdma_qpair_submit_request(struct spdk_nvme_qpair *qpair,
|
||||
return -1;
|
||||
}
|
||||
|
||||
req->timed_out = false;
|
||||
if (spdk_unlikely(rqpair->qpair.ctrlr->timeout_enabled)) {
|
||||
req->submit_tick = spdk_get_ticks();
|
||||
} else {
|
||||
req->submit_tick = 0;
|
||||
}
|
||||
|
||||
wr = &rdma_req->send_wr;
|
||||
|
||||
nvme_rdma_trace_ibv_sge(wr->sg_list);
|
||||
|
@ -706,13 +706,6 @@ nvme_tcp_qpair_submit_request(struct spdk_nvme_qpair *qpair,
|
||||
return -1;
|
||||
}
|
||||
|
||||
req->timed_out = false;
|
||||
if (spdk_unlikely(tqpair->qpair.ctrlr->timeout_enabled)) {
|
||||
req->submit_tick = spdk_get_ticks();
|
||||
} else {
|
||||
req->submit_tick = 0;
|
||||
}
|
||||
|
||||
return nvme_tcp_qpair_capsule_cmd_send(tqpair, tcp_req);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user