Lines Matching full:task
95 struct scsi_task *task; in scsi_task_new() local
100 task = g_new0(struct scsi_task, 1); in scsi_task_new()
101 memcpy(task->cdb, cdb, cdb_len); in scsi_task_new()
102 task->cdb_size = cdb_len; in scsi_task_new()
103 task->xfer_dir = dir; in scsi_task_new()
104 task->expxferlen = xfer_len; in scsi_task_new()
106 return task; in scsi_task_new()
130 struct scsi_task *task; in handle_cmd_sync() local
175 task = scsi_task_new(cdb_len, req->cdb, dir, len); in handle_cmd_sync()
178 task->iovector_out.iov = (struct scsi_iovec *)out; in handle_cmd_sync()
179 task->iovector_out.niov = out_len; in handle_cmd_sync()
181 task->iovector_in.iov = (struct scsi_iovec *)in; in handle_cmd_sync()
182 task->iovector_in.niov = in_len; in handle_cmd_sync()
185 g_debug("Sending iscsi cmd (cdb_len=%d, dir=%d, task=%p)", in handle_cmd_sync()
186 cdb_len, dir, task); in handle_cmd_sync()
187 if (!iscsi_scsi_command_sync(ctx, 0, task, NULL)) { in handle_cmd_sync()
189 g_free(task); in handle_cmd_sync()
195 rsp->status = task->status; in handle_cmd_sync()
196 rsp->resid = task->residual; in handle_cmd_sync()
198 if (task->status == SCSI_STATUS_CHECK_CONDITION) { in handle_cmd_sync()
200 rsp->sense_len = task->datain.size - 2; in handle_cmd_sync()
201 memcpy(rsp->sense, &task->datain.data[2], rsp->sense_len); in handle_cmd_sync()
204 g_free(task); in handle_cmd_sync()