Lines Matching refs:iser_task

51 	struct iscsi_iser_task *iser_task = task->dd_data;  in iser_prepare_read_cmd()  local
52 struct iser_device *device = iser_task->iser_conn->ib_conn.device; in iser_prepare_read_cmd()
55 struct iser_hdr *hdr = &iser_task->desc.iser_header; in iser_prepare_read_cmd()
56 struct iser_data_buf *buf_in = &iser_task->data[ISER_DIR_IN]; in iser_prepare_read_cmd()
58 err = iser_dma_map_task_data(iser_task, in iser_prepare_read_cmd()
65 if (scsi_prot_sg_count(iser_task->sc)) { in iser_prepare_read_cmd()
66 struct iser_data_buf *pbuf_in = &iser_task->prot[ISER_DIR_IN]; in iser_prepare_read_cmd()
68 err = iser_dma_map_task_data(iser_task, in iser_prepare_read_cmd()
76 err = device->iser_reg_rdma_mem(iser_task, ISER_DIR_IN); in iser_prepare_read_cmd()
81 mem_reg = &iser_task->rdma_reg[ISER_DIR_IN]; in iser_prepare_read_cmd()
105 struct iscsi_iser_task *iser_task = task->dd_data; in iser_prepare_write_cmd() local
106 struct iser_device *device = iser_task->iser_conn->ib_conn.device; in iser_prepare_write_cmd()
109 struct iser_hdr *hdr = &iser_task->desc.iser_header; in iser_prepare_write_cmd()
110 struct iser_data_buf *buf_out = &iser_task->data[ISER_DIR_OUT]; in iser_prepare_write_cmd()
111 struct ib_sge *tx_dsg = &iser_task->desc.tx_sg[1]; in iser_prepare_write_cmd()
113 err = iser_dma_map_task_data(iser_task, in iser_prepare_write_cmd()
120 if (scsi_prot_sg_count(iser_task->sc)) { in iser_prepare_write_cmd()
121 struct iser_data_buf *pbuf_out = &iser_task->prot[ISER_DIR_OUT]; in iser_prepare_write_cmd()
123 err = iser_dma_map_task_data(iser_task, in iser_prepare_write_cmd()
131 err = device->iser_reg_rdma_mem(iser_task, ISER_DIR_OUT); in iser_prepare_write_cmd()
137 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()
380 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_command() local
386 struct iser_tx_desc *tx_desc = &iser_task->desc; in iser_send_command()
396 data_buf = &iser_task->data[ISER_DIR_IN]; in iser_send_command()
397 prot_buf = &iser_task->prot[ISER_DIR_IN]; in iser_send_command()
399 data_buf = &iser_task->data[ISER_DIR_OUT]; in iser_send_command()
400 prot_buf = &iser_task->prot[ISER_DIR_OUT]; in iser_send_command()
431 iser_task->status = ISER_TASK_STATUS_STARTED; in iser_send_command()
451 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_data_out() local
482 mem_reg = &iser_task->rdma_reg[ISER_DIR_OUT]; in iser_send_data_out()
489 if (buf_offset + data_seg_len > iser_task->data[ISER_DIR_OUT].data_len) { in iser_send_data_out()
493 iser_task->data[ISER_DIR_OUT].data_len, itt); in iser_send_data_out()
515 struct iscsi_iser_task *iser_task = task->dd_data; in iser_send_control() local
516 struct iser_tx_desc *mdesc = &iser_task->desc; in iser_send_control()
649 void iser_task_rdma_init(struct iscsi_iser_task *iser_task) in iser_task_rdma_init() argument
652 iser_task->status = ISER_TASK_STATUS_INIT; in iser_task_rdma_init()
654 iser_task->dir[ISER_DIR_IN] = 0; in iser_task_rdma_init()
655 iser_task->dir[ISER_DIR_OUT] = 0; in iser_task_rdma_init()
657 iser_task->data[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
658 iser_task->data[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
660 iser_task->prot[ISER_DIR_IN].data_len = 0; in iser_task_rdma_init()
661 iser_task->prot[ISER_DIR_OUT].data_len = 0; in iser_task_rdma_init()
663 memset(&iser_task->rdma_reg[ISER_DIR_IN], 0, in iser_task_rdma_init()
665 memset(&iser_task->rdma_reg[ISER_DIR_OUT], 0, in iser_task_rdma_init()
669 void iser_task_rdma_finalize(struct iscsi_iser_task *iser_task) in iser_task_rdma_finalize() argument
671 struct iser_device *device = iser_task->iser_conn->ib_conn.device; in iser_task_rdma_finalize()
674 int prot_count = scsi_prot_sg_count(iser_task->sc); in iser_task_rdma_finalize()
679 if (iser_task->data[ISER_DIR_IN].orig_sg) { in iser_task_rdma_finalize()
681 iser_finalize_rdma_unaligned_sg(iser_task, in iser_task_rdma_finalize()
682 &iser_task->data[ISER_DIR_IN], in iser_task_rdma_finalize()
686 if (iser_task->data[ISER_DIR_OUT].orig_sg) { in iser_task_rdma_finalize()
688 iser_finalize_rdma_unaligned_sg(iser_task, in iser_task_rdma_finalize()
689 &iser_task->data[ISER_DIR_OUT], in iser_task_rdma_finalize()
693 if (iser_task->prot[ISER_DIR_IN].orig_sg) { in iser_task_rdma_finalize()
695 iser_finalize_rdma_unaligned_sg(iser_task, in iser_task_rdma_finalize()
696 &iser_task->prot[ISER_DIR_IN], in iser_task_rdma_finalize()
700 if (iser_task->prot[ISER_DIR_OUT].orig_sg) { in iser_task_rdma_finalize()
702 iser_finalize_rdma_unaligned_sg(iser_task, in iser_task_rdma_finalize()
703 &iser_task->prot[ISER_DIR_OUT], in iser_task_rdma_finalize()
707 if (iser_task->dir[ISER_DIR_IN]) { in iser_task_rdma_finalize()
708 device->iser_unreg_rdma_mem(iser_task, ISER_DIR_IN); in iser_task_rdma_finalize()
710 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
711 &iser_task->data[ISER_DIR_IN], in iser_task_rdma_finalize()
714 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
715 &iser_task->prot[ISER_DIR_IN], in iser_task_rdma_finalize()
719 if (iser_task->dir[ISER_DIR_OUT]) { in iser_task_rdma_finalize()
720 device->iser_unreg_rdma_mem(iser_task, ISER_DIR_OUT); in iser_task_rdma_finalize()
722 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
723 &iser_task->data[ISER_DIR_OUT], in iser_task_rdma_finalize()
726 iser_dma_unmap_task_data(iser_task, in iser_task_rdma_finalize()
727 &iser_task->prot[ISER_DIR_OUT], in iser_task_rdma_finalize()