isci: fix incorrect assumptions about task->dev and task->dev->port being NULL
authorDan Williams <dan.j.williams@intel.com>
Fri, 11 Mar 2011 18:13:51 +0000 (10:13 -0800)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jul 2011 10:55:30 +0000 (03:55 -0700)
commit1077a574103177bff22b7cdd155d960f46ac1e8f
tree4ccbb76979a661c240464d5a951fbd96893b5586
parent34cad85d18d6da1cc11e410046d7572e65b19fcf
isci: fix incorrect assumptions about task->dev and task->dev->port being NULL

A domain_device has the same lifetime as its related scsi_target.  The
scsi_target is reference counted based on outstanding commands,
therefore it is safe to assume that if we have a valid sas_task that the
->dev pointer is also valid.

The asd_sas_port of a domain_device has the same lifetime as the driver
so it can also never be NULL as long as the sas_task is valid and the
driver is loaded.

This also cleans up isci_task_complete_for_upper_layer(), renames it to
isci_task_refuse() and notices that the isci_completion_selection
parameter was set to isci_perform_normal_io_completion by all callers.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/scsi/isci/task.c