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()
621 struct iscsi_iser_task *iser_task = task->dd_data; in iser_check_remote_inv() local
624 if (iser_task->dir[ISER_DIR_IN]) { in iser_check_remote_inv()
625 desc = iser_task->rdma_reg[ISER_DIR_IN].mem_h; in iser_check_remote_inv()
629 if (iser_task->dir[ISER_DIR_OUT]) { in iser_check_remote_inv()
630 desc = iser_task->rdma_reg[ISER_DIR_OUT].mem_h; in iser_check_remote_inv()
731 void iser_task_rdma_init(struct iscsi_iser_task *iser_task) in iser_task_rdma_init() argument
734 iser_task->status = ISER_TASK_STATUS_INIT; in iser_task_rdma_init()
736 iser_task->dir[ISER_DIR_IN] = 0; in iser_task_rdma_init()
737 iser_task->dir[ISER_DIR_OUT] = 0; in iser_task_rdma_init()
739 iser_task->data[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
740 iser_task->data[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
742 iser_task->prot[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
743 iser_task->prot[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
745 memset(&iser_task->rdma_reg[ISER_DIR_IN], 0, in iser_task_rdma_init()
747 memset(&iser_task->rdma_reg[ISER_DIR_OUT], 0, in iser_task_rdma_init()
751 void iser_task_rdma_finalize(struct iscsi_iser_task *iser_task) in iser_task_rdma_finalize() argument
753 int prot_count = scsi_prot_sg_count(iser_task->sc); in iser_task_rdma_finalize()
755 if (iser_task->dir[ISER_DIR_IN]) { in iser_task_rdma_finalize()
756 iser_unreg_rdma_mem(iser_task, ISER_DIR_IN); in iser_task_rdma_finalize()
757 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
758 &iser_task->data[ISER_DIR_IN], in iser_task_rdma_finalize()
761 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
762 &iser_task->prot[ISER_DIR_IN], in iser_task_rdma_finalize()
766 if (iser_task->dir[ISER_DIR_OUT]) { in iser_task_rdma_finalize()
767 iser_unreg_rdma_mem(iser_task, ISER_DIR_OUT); in iser_task_rdma_finalize()
768 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
769 &iser_task->data[ISER_DIR_OUT], in iser_task_rdma_finalize()
772 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
773 &iser_task->prot[ISER_DIR_OUT], in iser_task_rdma_finalize()