aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/isci/task.c
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2011-06-27 17:57:03 -0400
committerDan Williams <dan.j.williams@intel.com>2011-07-03 07:04:52 -0400
commit5076a1a97e2fa61c847a5fdd4b1991faf7716da6 (patch)
tree251d207e75439da25d4d3a0353e0b853c8e79f2b /drivers/scsi/isci/task.c
parentba7cb22342a66505a831bb7e4541fef90e0193c9 (diff)
isci: unify isci_request and scic_sds_request
They are one in the same object so remove the distinction. The near duplicate fields (owning_controller, and isci_host) will be cleaned up after the scic_sds_contoller isci_host unification. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/scsi/isci/task.c')
-rw-r--r--drivers/scsi/isci/task.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/scsi/isci/task.c b/drivers/scsi/isci/task.c
index d2dba835489..700708c8267 100644
--- a/drivers/scsi/isci/task.c
+++ b/drivers/scsi/isci/task.c
@@ -258,7 +258,7 @@ static struct isci_request *isci_task_request_build(struct isci_host *ihost,
258 258
259 /* let the core do it's construct. */ 259 /* let the core do it's construct. */
260 status = scic_task_request_construct(&ihost->sci, &idev->sci, tag, 260 status = scic_task_request_construct(&ihost->sci, &idev->sci, tag,
261 &ireq->sci); 261 ireq);
262 262
263 if (status != SCI_SUCCESS) { 263 if (status != SCI_SUCCESS) {
264 dev_warn(&ihost->pdev->dev, 264 dev_warn(&ihost->pdev->dev,
@@ -272,7 +272,7 @@ static struct isci_request *isci_task_request_build(struct isci_host *ihost,
272 /* XXX convert to get this from task->tproto like other drivers */ 272 /* XXX convert to get this from task->tproto like other drivers */
273 if (dev->dev_type == SAS_END_DEV) { 273 if (dev->dev_type == SAS_END_DEV) {
274 isci_tmf->proto = SAS_PROTOCOL_SSP; 274 isci_tmf->proto = SAS_PROTOCOL_SSP;
275 status = scic_task_request_construct_ssp(&ireq->sci); 275 status = scic_task_request_construct_ssp(ireq);
276 if (status != SCI_SUCCESS) 276 if (status != SCI_SUCCESS)
277 return NULL; 277 return NULL;
278 } 278 }
@@ -337,7 +337,7 @@ int isci_task_execute_tmf(struct isci_host *ihost,
337 /* start the TMF io. */ 337 /* start the TMF io. */
338 status = scic_controller_start_task(&ihost->sci, 338 status = scic_controller_start_task(&ihost->sci,
339 sci_device, 339 sci_device,
340 &ireq->sci); 340 ireq);
341 341
342 if (status != SCI_TASK_SUCCESS) { 342 if (status != SCI_TASK_SUCCESS) {
343 dev_warn(&ihost->pdev->dev, 343 dev_warn(&ihost->pdev->dev,
@@ -371,7 +371,7 @@ int isci_task_execute_tmf(struct isci_host *ihost,
371 371
372 scic_controller_terminate_request(&ihost->sci, 372 scic_controller_terminate_request(&ihost->sci,
373 &isci_device->sci, 373 &isci_device->sci,
374 &ireq->sci); 374 ireq);
375 375
376 spin_unlock_irqrestore(&ihost->scic_lock, flags); 376 spin_unlock_irqrestore(&ihost->scic_lock, flags);
377 377
@@ -565,7 +565,7 @@ static void isci_terminate_request_core(
565 status = scic_controller_terminate_request( 565 status = scic_controller_terminate_request(
566 &isci_host->sci, 566 &isci_host->sci,
567 &isci_device->sci, 567 &isci_device->sci,
568 &isci_request->sci); 568 isci_request);
569 } 569 }
570 spin_unlock_irqrestore(&isci_host->scic_lock, flags); 570 spin_unlock_irqrestore(&isci_host->scic_lock, flags);
571 571
@@ -1235,7 +1235,6 @@ isci_task_request_complete(struct isci_host *ihost,
1235{ 1235{
1236 struct isci_tmf *tmf = isci_request_access_tmf(ireq); 1236 struct isci_tmf *tmf = isci_request_access_tmf(ireq);
1237 struct completion *tmf_complete; 1237 struct completion *tmf_complete;
1238 struct scic_sds_request *sci_req = &ireq->sci;
1239 1238
1240 dev_dbg(&ihost->pdev->dev, 1239 dev_dbg(&ihost->pdev->dev,
1241 "%s: request = %p, status=%d\n", 1240 "%s: request = %p, status=%d\n",
@@ -1248,18 +1247,18 @@ isci_task_request_complete(struct isci_host *ihost,
1248 1247
1249 if (tmf->proto == SAS_PROTOCOL_SSP) { 1248 if (tmf->proto == SAS_PROTOCOL_SSP) {
1250 memcpy(&tmf->resp.resp_iu, 1249 memcpy(&tmf->resp.resp_iu,
1251 &sci_req->ssp.rsp, 1250 &ireq->ssp.rsp,
1252 SSP_RESP_IU_MAX_SIZE); 1251 SSP_RESP_IU_MAX_SIZE);
1253 } else if (tmf->proto == SAS_PROTOCOL_SATA) { 1252 } else if (tmf->proto == SAS_PROTOCOL_SATA) {
1254 memcpy(&tmf->resp.d2h_fis, 1253 memcpy(&tmf->resp.d2h_fis,
1255 &sci_req->stp.rsp, 1254 &ireq->stp.rsp,
1256 sizeof(struct dev_to_host_fis)); 1255 sizeof(struct dev_to_host_fis));
1257 } 1256 }
1258 1257
1259 /* PRINT_TMF( ((struct isci_tmf *)request->task)); */ 1258 /* PRINT_TMF( ((struct isci_tmf *)request->task)); */
1260 tmf_complete = tmf->complete; 1259 tmf_complete = tmf->complete;
1261 1260
1262 scic_controller_complete_io(&ihost->sci, ireq->sci.target_device, &ireq->sci); 1261 scic_controller_complete_io(&ihost->sci, ireq->target_device, ireq);
1263 /* set the 'terminated' flag handle to make sure it cannot be terminated 1262 /* set the 'terminated' flag handle to make sure it cannot be terminated
1264 * or completed again. 1263 * or completed again.
1265 */ 1264 */