Lines Matching refs:ireq
258 struct isci_request *ireq = ihost->reqs[index];
261 if (test_bit(IREQ_ACTIVE, &ireq->flags) &&
262 ireq->io_tag != SCI_CONTROLLER_INVALID_IO_TAG &&
263 ISCI_TAG_SEQ(ireq->io_tag) == ihost->io_request_sequence[index])
267 sci_io_request_tc_completion(ireq, ent);
273 struct isci_request *ireq;
281 ireq = ihost->reqs[index];
283 __func__, ent, ireq);
369 struct isci_request *ireq;
401 ireq = ihost->reqs[index];
402 sci_io_request_event_handler(ireq, ent);
409 ireq = ihost->reqs[index];
410 if (ireq != NULL)
411 sci_io_request_event_handler(ireq, ent);
1078 void ireq_done(struct isci_host *ihost, struct isci_request *ireq, struct sas_task *task)
1080 if (!test_bit(IREQ_ABORT_PATH_ACTIVE, &ireq->flags) &&
1082 if (test_bit(IREQ_COMPLETE_IN_TARGET, &ireq->flags)) {
1085 "%s: Normal - ireq/task = %p/%p\n",
1086 __func__, ireq, task);
1091 "%s: Error - ireq/task = %p/%p\n",
1092 __func__, ireq, task);
1100 if (test_and_clear_bit(IREQ_ABORT_PATH_ACTIVE, &ireq->flags))
1103 if (!test_bit(IREQ_NO_AUTO_FREE_TAG, &ireq->flags))
1104 isci_free_tag(ihost, ireq->io_tag);
2279 struct isci_request *ireq;
2282 ireq = dmam_alloc_coherent(dev, sizeof(*ireq), &dma, GFP_KERNEL);
2283 if (!ireq)
2286 ireq->tc = &ihost->task_context_table[i];
2287 ireq->owning_controller = ihost;
2288 ireq->request_daddr = dma;
2289 ireq->isci_host = ihost;
2290 ihost->reqs[i] = ireq;
2466 struct isci_request *ireq = ihost->reqs[task_index];
2468 if (test_bit(IREQ_ACTIVE, &ireq->flags)) {
2472 return ireq;
2605 struct isci_request *ireq)
2615 status = sci_remote_device_start_io(ihost, idev, ireq);
2619 set_bit(IREQ_ACTIVE, &ireq->flags);
2620 sci_controller_post_request(ihost, ireq->post_context);
2626 struct isci_request *ireq)
2639 status = sci_io_request_terminate(ireq);
2641 dev_dbg(&ihost->pdev->dev, "%s: status=%d; ireq=%p; flags=%lx\n",
2642 __func__, status, ireq, ireq->flags);
2645 !test_bit(IREQ_PENDING_ABORT, &ireq->flags) &&
2646 !test_and_set_bit(IREQ_TC_ABORT_POSTED, &ireq->flags)) {
2651 ihost, ireq->post_context |
2666 * @ireq: the handle to the io request object to complete.
2670 struct isci_request *ireq)
2679 status = sci_remote_device_complete_io(ihost, idev, ireq);
2683 clear_bit(IREQ_ACTIVE, &ireq->flags);
2693 enum sci_status sci_controller_continue_io(struct isci_request *ireq)
2695 struct isci_host *ihost = ireq->owning_controller;
2703 set_bit(IREQ_ACTIVE, &ireq->flags);
2704 sci_controller_post_request(ihost, ireq->post_context);
2715 * @ireq: the handle to the task request object to start.
2719 struct isci_request *ireq)
2731 status = sci_remote_device_start_task(ihost, idev, ireq);
2734 set_bit(IREQ_ACTIVE, &ireq->flags);
2743 set_bit(IREQ_ACTIVE, &ireq->flags);
2744 sci_controller_post_request(ihost, ireq->post_context);