Lines Matching defs:task

1535 		/* Search for a possible ccb that matches the task */
1539 if ((tag != 0xFFFFFFFF) && (ccb->task == t))
1559 pm8001_dbg(pm8001_ha, FAIL, "task 0x%p done with event 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
1589 pm8001_dbg(pm8001_ha, DEVIO, "...query task failed!!!\n");
1598 if (ret == TMF_RESP_FUNC_SUCC) /* task on lu */
1605 /* Search for a possible ccb that matches the task */
1609 if ((tag != 0xFFFFFFFF) && (ccb->task == t))
1614 if (ret == TMF_RESP_FUNC_SUCC) /* task on lu */
1623 case TMF_RESP_FUNC_SUCC: /* task on lu */
1640 case TMF_RESP_FUNC_COMPLETE: /* task not on lu */
1642 /* Do we need to abort the task locally? */
1702 struct sas_task *task = NULL;
1713 task = sas_alloc_slow_task(GFP_ATOMIC);
1714 if (!task) {
1715 pm8001_dbg(pm8001_ha, FAIL, "cannot allocate task\n");
1719 task->task_done = pm8001_task_done;
1723 sas_free_task(task);
1730 ccb->task = task;
1743 sas_free_task(task);
1756 struct sas_task *task = NULL;
1762 task = sas_alloc_slow_task(GFP_ATOMIC);
1764 if (!task) {
1765 pm8001_dbg(pm8001_ha, FAIL, "cannot allocate task !!!\n");
1768 task->task_done = pm8001_task_done;
1772 sas_free_task(task);
1782 sas_free_task(task);
1788 task->dev = dev;
1789 task->dev->lldd_dev = pm8001_ha_dev;
1794 ccb->task = task;
1818 sas_free_task(task);
1833 * that the task has been finished.
1860 t = ccb->task;
1875 "status:0x%x, tag:0x%x, task:0x%p\n",
2056 pm8001_dbg(pm8001_ha, FAIL, "task 0x%p done with io_status 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
2083 t = ccb->task;
2224 pm8001_dbg(pm8001_ha, FAIL, "task 0x%p done with event 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
2267 t = ccb->task;
2278 pm8001_dbg(pm8001_ha, FAIL, "task null\n");
2284 pm8001_dbg(pm8001_ha, FAIL, "task or dev null\n");
2296 "status:0x%x, tag:0x%x, task::0x%p\n",
2626 "task 0x%p done with io_status 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
2653 t = ccb->task;
2672 t = ccb->task;
2824 "task 0x%p done with io_status 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
2851 t = ccb->task;
2857 "status:0x%x, tag:0x%x, task:0x%p\n",
3008 pm8001_dbg(pm8001_ha, FAIL, "task 0x%p done with io_status 0x%x resp 0x%x stat 0x%x but aborted by upper layer!\n",
3034 ccb->task = NULL;
3052 ccb->task = NULL;
3119 ccb->task = NULL;
3528 ccb->task = NULL;
3600 ccb->task = NULL;
3644 t = ccb->task;
3653 pm8001_dbg(pm8001_ha, FAIL, "task abort failed status 0x%x ,tag = 0x%x, scp= 0x%x\n",
4085 * pm8001_chip_smp_req - send a SMP task to FW
4093 struct sas_task *task = ccb->task;
4094 struct domain_device *dev = task->dev;
4106 sg_req = &task->smp_task.smp_req;
4112 sg_resp = &task->smp_task.smp_resp;
4129 cpu_to_le64((u64)sg_dma_address(&task->smp_task.smp_req));
4131 cpu_to_le32((u32)sg_dma_len(&task->smp_task.smp_req)-4);
4133 cpu_to_le64((u64)sg_dma_address(&task->smp_task.smp_resp));
4135 cpu_to_le32((u32)sg_dma_len(&task->smp_task.smp_resp)-4);
4145 dma_unmap_sg(pm8001_ha->dev, &ccb->task->smp_task.smp_resp, 1,
4148 dma_unmap_sg(pm8001_ha->dev, &ccb->task->smp_task.smp_req, 1,
4154 * pm8001_chip_ssp_io_req - send a SSP task to FW
4161 struct sas_task *task = ccb->task;
4162 struct domain_device *dev = task->dev;
4171 memcpy(ssp_cmd.ssp_iu.lun, task->ssp_task.LUN, 8);
4173 cpu_to_le32(data_dir_flags[task->data_dir] << 8 | 0x0);/*0 for
4175 ssp_cmd.data_len = cpu_to_le32(task->total_xfer_len);
4178 if (task->ssp_task.enable_first_burst)
4180 ssp_cmd.ssp_iu.efb_prio_attr |= (task->ssp_task.task_prio << 3);
4181 ssp_cmd.ssp_iu.efb_prio_attr |= (task->ssp_task.task_attr & 7);
4182 memcpy(ssp_cmd.ssp_iu.cdb, task->ssp_task.cmd->cmnd,
4183 task->ssp_task.cmd->cmd_len);
4187 if (task->num_scatter > 1) {
4188 pm8001_chip_make_sg(task->scatter, ccb->n_elem, ccb->buf_prd);
4193 } else if (task->num_scatter == 1) {
4194 u64 dma_addr = sg_dma_address(task->scatter);
4197 ssp_cmd.len = cpu_to_le32(task->total_xfer_len);
4199 } else if (task->num_scatter == 0) {
4202 ssp_cmd.len = cpu_to_le32(task->total_xfer_len);
4213 struct sas_task *task = ccb->task;
4214 struct domain_device *dev = task->dev;
4229 if (task->data_dir == DMA_NONE && !task->ata_task.use_ncq) {
4232 } else if (likely(!task->ata_task.device_control_reg_update)) {
4233 if (task->ata_task.use_ncq &&
4237 } else if (task->ata_task.dma_xfer) {
4245 if (task->ata_task.use_ncq && pm8001_get_ncq_tag(task, &hdr_tag)) {
4246 task->ata_task.fis.sector_count |= (u8) (hdr_tag << 3);
4249 dir = data_dir_flags[task->data_dir] << 8;
4252 sata_cmd.data_len = cpu_to_le32(task->total_xfer_len);
4255 sata_cmd.sata_fis = task->ata_task.fis;
4256 if (likely(!task->ata_task.device_control_reg_update))
4260 if (task->num_scatter > 1) {
4261 pm8001_chip_make_sg(task->scatter, ccb->n_elem, ccb->buf_prd);
4266 } else if (task->num_scatter == 1) {
4267 u64 dma_addr = sg_dma_address(task->scatter);
4270 sata_cmd.len = cpu_to_le32(task->total_xfer_len);
4272 } else if (task->num_scatter == 0) {
4275 sata_cmd.len = cpu_to_le32(task->total_xfer_len);
4287 ts = &task->task_status;
4289 spin_lock_irqsave(&task->task_state_lock, flags);
4292 task->task_state_flags &= ~SAS_TASK_STATE_PENDING;
4293 task->task_state_flags &= ~SAS_TASK_AT_INITIATOR;
4294 task->task_state_flags |= SAS_TASK_STATE_DONE;
4295 if (unlikely((task->task_state_flags &
4297 spin_unlock_irqrestore(&task->task_state_lock,
4300 "task 0x%p resp 0x%x stat 0x%x but aborted by upper layer\n",
4301 task, ts->resp,
4303 pm8001_ccb_task_free(pm8001_ha, task, ccb, tag);
4305 spin_unlock_irqrestore(&task->task_state_lock,
4307 pm8001_ccb_task_free_done(pm8001_ha, task,
4539 * pm8001_chip_abort_task - SAS abort task when error or exception happened.
4546 pm8001_dbg(pm8001_ha, EH, "cmd_tag = %x, abort task tag = 0x%x\n",
4563 * pm8001_chip_ssp_tm_req - built the task management command.
4566 * @tmf: task management function.
4571 struct sas_task *task = ccb->task;
4572 struct domain_device *dev = task->dev;
4583 memcpy(sspTMCmd.lun, task->ssp_task.LUN, 8);