Lines Matching refs:fcpreq
30 struct nvmefc_tgt_fcp_req *fcpreq; /* only if RS */ member
71 struct nvmefc_tgt_fcp_req *fcpreq; member
638 fod->fcpreq = NULL; in nvmet_fc_prep_fcp_iodlist()
698 struct nvmefc_tgt_fcp_req *fcpreq) in nvmet_fc_queue_fcp_req() argument
700 struct nvmet_fc_fcp_iod *fod = fcpreq->nvmet_fc_private; in nvmet_fc_queue_fcp_req()
706 fcpreq->hwqid = queue->qid ? in nvmet_fc_queue_fcp_req()
719 nvmet_fc_queue_fcp_req(fod->tgtport, fod->queue, fod->fcpreq); in nvmet_fc_fcp_rqst_op_defer_work()
727 struct nvmefc_tgt_fcp_req *fcpreq = fod->fcpreq; in nvmet_fc_free_fcp_iod() local
735 fcpreq->nvmet_fc_private = NULL; in nvmet_fc_free_fcp_iod()
741 fod->fcpreq = NULL; in nvmet_fc_free_fcp_iod()
743 tgtport->ops->fcp_req_release(&tgtport->fc_target_port, fcpreq); in nvmet_fc_free_fcp_iod()
760 fcpreq = deferfcp->fcp_req; in nvmet_fc_free_fcp_iod()
768 memcpy(&fod->cmdiubuf, fcpreq->rspaddr, fcpreq->rsplen); in nvmet_fc_free_fcp_iod()
771 fcpreq->rspaddr = NULL; in nvmet_fc_free_fcp_iod()
772 fcpreq->rsplen = 0; in nvmet_fc_free_fcp_iod()
773 fcpreq->nvmet_fc_private = fod; in nvmet_fc_free_fcp_iod()
774 fod->fcpreq = fcpreq; in nvmet_fc_free_fcp_iod()
778 tgtport->ops->defer_rcv(&tgtport->fc_target_port, fcpreq); in nvmet_fc_free_fcp_iod()
913 &tgtport->fc_target_port, fod->fcpreq); in nvmet_fc_delete_target_queue()
2047 iod->fcpreq = NULL; in nvmet_fc_rcv_ls_req()
2131 if (fod->fcpreq->op == NVMET_FCOP_READDATA_RSP) in nvmet_fc_prep_fcp_rsp()
2165 fod->fcpreq->rspaddr = ersp; in nvmet_fc_prep_fcp_rsp()
2166 fod->fcpreq->rspdma = fod->rspdma; in nvmet_fc_prep_fcp_rsp()
2170 fod->fcpreq->rsplen = NVME_FC_SIZEOF_ZEROS_RSP; in nvmet_fc_prep_fcp_rsp()
2176 fod->fcpreq->rsplen = sizeof(*ersp); in nvmet_fc_prep_fcp_rsp()
2183 static void nvmet_fc_xmt_fcp_op_done(struct nvmefc_tgt_fcp_req *fcpreq);
2189 struct nvmefc_tgt_fcp_req *fcpreq = fod->fcpreq; in nvmet_fc_abort_op() local
2200 tgtport->ops->fcp_abort(&tgtport->fc_target_port, fcpreq); in nvmet_fc_abort_op()
2211 fod->fcpreq->op = NVMET_FCOP_RSP; in nvmet_fc_xmt_fcp_rsp()
2212 fod->fcpreq->timeout = 0; in nvmet_fc_xmt_fcp_rsp()
2216 ret = tgtport->ops->fcp_op(&tgtport->fc_target_port, fod->fcpreq); in nvmet_fc_xmt_fcp_rsp()
2225 struct nvmefc_tgt_fcp_req *fcpreq = fod->fcpreq; in nvmet_fc_transfer_fcp_data() local
2232 fcpreq->op = op; in nvmet_fc_transfer_fcp_data()
2233 fcpreq->offset = fod->offset; in nvmet_fc_transfer_fcp_data()
2234 fcpreq->timeout = NVME_FC_TGTOP_TIMEOUT_SEC; in nvmet_fc_transfer_fcp_data()
2245 fcpreq->sg = sg; in nvmet_fc_transfer_fcp_data()
2246 fcpreq->sg_cnt = 0; in nvmet_fc_transfer_fcp_data()
2248 fcpreq->sg_cnt < tgtport->max_sg_cnt && in nvmet_fc_transfer_fcp_data()
2250 fcpreq->sg_cnt++; in nvmet_fc_transfer_fcp_data()
2254 if (tlen < remaininglen && fcpreq->sg_cnt == 0) { in nvmet_fc_transfer_fcp_data()
2255 fcpreq->sg_cnt++; in nvmet_fc_transfer_fcp_data()
2264 fcpreq->transfer_length = tlen; in nvmet_fc_transfer_fcp_data()
2265 fcpreq->transferred_length = 0; in nvmet_fc_transfer_fcp_data()
2266 fcpreq->fcp_error = 0; in nvmet_fc_transfer_fcp_data()
2267 fcpreq->rsplen = 0; in nvmet_fc_transfer_fcp_data()
2274 ((fod->offset + fcpreq->transfer_length) == fod->req.transfer_len) && in nvmet_fc_transfer_fcp_data()
2276 fcpreq->op = NVMET_FCOP_READDATA_RSP; in nvmet_fc_transfer_fcp_data()
2280 ret = tgtport->ops->fcp_op(&tgtport->fc_target_port, fod->fcpreq); in nvmet_fc_transfer_fcp_data()
2295 fcpreq->fcp_error = ret; in nvmet_fc_transfer_fcp_data()
2296 fcpreq->transferred_length = 0; in nvmet_fc_transfer_fcp_data()
2297 nvmet_fc_xmt_fcp_op_done(fod->fcpreq); in nvmet_fc_transfer_fcp_data()
2305 struct nvmefc_tgt_fcp_req *fcpreq = fod->fcpreq; in __nvmet_fc_fod_op_abort() local
2310 if (fcpreq->op == NVMET_FCOP_WRITEDATA) { in __nvmet_fc_fod_op_abort()
2328 struct nvmefc_tgt_fcp_req *fcpreq = fod->fcpreq; in nvmet_fc_fod_op_done() local
2338 switch (fcpreq->op) { in nvmet_fc_fod_op_done()
2343 if (fcpreq->fcp_error || in nvmet_fc_fod_op_done()
2344 fcpreq->transferred_length != fcpreq->transfer_length) { in nvmet_fc_fod_op_done()
2353 fod->offset += fcpreq->transferred_length; in nvmet_fc_fod_op_done()
2373 if (fcpreq->fcp_error || in nvmet_fc_fod_op_done()
2374 fcpreq->transferred_length != fcpreq->transfer_length) { in nvmet_fc_fod_op_done()
2381 if (fcpreq->op == NVMET_FCOP_READDATA_RSP) { in nvmet_fc_fod_op_done()
2388 fod->offset += fcpreq->transferred_length; in nvmet_fc_fod_op_done()
2417 nvmet_fc_xmt_fcp_op_done(struct nvmefc_tgt_fcp_req *fcpreq) in nvmet_fc_xmt_fcp_op_done() argument
2419 struct nvmet_fc_fcp_iod *fod = fcpreq->nvmet_fc_private; in nvmet_fc_xmt_fcp_op_done()
2511 fod->fcpreq->done = nvmet_fc_xmt_fcp_op_done; in nvmet_fc_handle_fcp_rqst()
2632 struct nvmefc_tgt_fcp_req *fcpreq, in nvmet_fc_rcv_fcp_req() argument
2667 fcpreq->nvmet_fc_private = fod; in nvmet_fc_rcv_fcp_req()
2668 fod->fcpreq = fcpreq; in nvmet_fc_rcv_fcp_req()
2672 nvmet_fc_queue_fcp_req(tgtport, queue, fcpreq); in nvmet_fc_rcv_fcp_req()
2703 fcpreq->rspaddr = cmdiubuf; in nvmet_fc_rcv_fcp_req()
2704 fcpreq->rsplen = cmdiubuf_len; in nvmet_fc_rcv_fcp_req()
2705 deferfcp->fcp_req = fcpreq; in nvmet_fc_rcv_fcp_req()
2743 struct nvmefc_tgt_fcp_req *fcpreq) in nvmet_fc_rcv_fcp_abort() argument
2745 struct nvmet_fc_fcp_iod *fod = fcpreq->nvmet_fc_private; in nvmet_fc_rcv_fcp_abort()
2749 if (!fod || fod->fcpreq != fcpreq) in nvmet_fc_rcv_fcp_abort()