Lines Matching refs:iser_task
51 struct iscsi_iser_task *iser_task = task->dd_data; in iser_prepare_read_cmd() local
54 struct iser_ctrl *hdr = &iser_task->desc.iser_header; in iser_prepare_read_cmd()
55 struct iser_data_buf *buf_in = &iser_task->data[ISER_DIR_IN]; in iser_prepare_read_cmd()
57 err = iser_dma_map_task_data(iser_task, in iser_prepare_read_cmd()
64 if (scsi_prot_sg_count(iser_task->sc)) { in iser_prepare_read_cmd()
65 struct iser_data_buf *pbuf_in = &iser_task->prot[ISER_DIR_IN]; in iser_prepare_read_cmd()
67 err = iser_dma_map_task_data(iser_task, in iser_prepare_read_cmd()
75 err = iser_reg_rdma_mem(iser_task, ISER_DIR_IN, false); in iser_prepare_read_cmd()
80 mem_reg = &iser_task->rdma_reg[ISER_DIR_IN]; in iser_prepare_read_cmd()
104 struct iscsi_iser_task *iser_task = task->dd_data; in iser_prepare_write_cmd() local
107 struct iser_ctrl *hdr = &iser_task->desc.iser_header; in iser_prepare_write_cmd()
108 struct iser_data_buf *buf_out = &iser_task->data[ISER_DIR_OUT]; in iser_prepare_write_cmd()
109 struct ib_sge *tx_dsg = &iser_task->desc.tx_sg[1]; in iser_prepare_write_cmd()
111 err = iser_dma_map_task_data(iser_task, in iser_prepare_write_cmd()
118 if (scsi_prot_sg_count(iser_task->sc)) { in iser_prepare_write_cmd()
119 struct iser_data_buf *pbuf_out = &iser_task->prot[ISER_DIR_OUT]; in iser_prepare_write_cmd()
121 err = iser_dma_map_task_data(iser_task, in iser_prepare_write_cmd()
129 err = iser_reg_rdma_mem(iser_task, ISER_DIR_OUT, in iser_prepare_write_cmd()
136 mem_reg = &iser_task->rdma_reg[ISER_DIR_OUT]; in iser_prepare_write_cmd()
156 iser_task->desc.num_sge = 2; in iser_prepare_write_cmd()
366 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_command() local
372 struct iser_tx_desc *tx_desc = &iser_task->desc; in iser_send_command()
383 data_buf = &iser_task->data[ISER_DIR_IN]; in iser_send_command()
384 prot_buf = &iser_task->prot[ISER_DIR_IN]; in iser_send_command()
386 data_buf = &iser_task->data[ISER_DIR_OUT]; in iser_send_command()
387 prot_buf = &iser_task->prot[ISER_DIR_OUT]; in iser_send_command()
418 iser_task->status = ISER_TASK_STATUS_STARTED; in iser_send_command()
438 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_data_out() local
468 mem_reg = &iser_task->rdma_reg[ISER_DIR_OUT]; in iser_send_data_out()
475 if (buf_offset + data_seg_len > iser_task->data[ISER_DIR_OUT].data_len) { in iser_send_data_out()
478 iser_task->data[ISER_DIR_OUT].data_len, itt); in iser_send_data_out()
500 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_control() local
501 struct iser_tx_desc *mdesc = &iser_task->desc; in iser_send_control()
626 struct iscsi_iser_task *iser_task = task->dd_data; in iser_check_remote_inv() local
629 if (iser_task->dir[ISER_DIR_IN]) { in iser_check_remote_inv()
630 desc = iser_task->rdma_reg[ISER_DIR_IN].mem_h; in iser_check_remote_inv()
635 if (iser_task->dir[ISER_DIR_OUT]) { in iser_check_remote_inv()
636 desc = iser_task->rdma_reg[ISER_DIR_OUT].mem_h; in iser_check_remote_inv()
738 void iser_task_rdma_init(struct iscsi_iser_task *iser_task) in iser_task_rdma_init() argument
741 iser_task->status = ISER_TASK_STATUS_INIT; in iser_task_rdma_init()
743 iser_task->dir[ISER_DIR_IN] = 0; in iser_task_rdma_init()
744 iser_task->dir[ISER_DIR_OUT] = 0; in iser_task_rdma_init()
746 iser_task->data[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
747 iser_task->data[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
749 iser_task->prot[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
750 iser_task->prot[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
752 iser_task->prot[ISER_DIR_IN].dma_nents = 0; in iser_task_rdma_init()
753 iser_task->prot[ISER_DIR_OUT].dma_nents = 0; in iser_task_rdma_init()
755 memset(&iser_task->rdma_reg[ISER_DIR_IN], 0, in iser_task_rdma_init()
757 memset(&iser_task->rdma_reg[ISER_DIR_OUT], 0, in iser_task_rdma_init()
761 void iser_task_rdma_finalize(struct iscsi_iser_task *iser_task) in iser_task_rdma_finalize() argument
763 int prot_count = scsi_prot_sg_count(iser_task->sc); in iser_task_rdma_finalize()
765 if (iser_task->dir[ISER_DIR_IN]) { in iser_task_rdma_finalize()
766 iser_unreg_rdma_mem(iser_task, ISER_DIR_IN); in iser_task_rdma_finalize()
767 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
768 &iser_task->data[ISER_DIR_IN], in iser_task_rdma_finalize()
771 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
772 &iser_task->prot[ISER_DIR_IN], in iser_task_rdma_finalize()
776 if (iser_task->dir[ISER_DIR_OUT]) { in iser_task_rdma_finalize()
777 iser_unreg_rdma_mem(iser_task, ISER_DIR_OUT); in iser_task_rdma_finalize()
778 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
779 &iser_task->data[ISER_DIR_OUT], in iser_task_rdma_finalize()
782 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
783 &iser_task->prot[ISER_DIR_OUT], in iser_task_rdma_finalize()