Commit f53a3a32 authored by Jeff Skirvin's avatar Jeff Skirvin Committed by Dan Williams

isci: Requests that do not start must be set to "complete"

Requests that fail at start because of a reset pending condition
must be set to complete in order to allow for later cleanup.
Signed-off-by: default avatarJeff Skirvin <jeffrey.d.skirvin@intel.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent cde76fbf
...@@ -3678,18 +3678,19 @@ int isci_request_execute( ...@@ -3678,18 +3678,19 @@ int isci_request_execute(
* Update it's status and add it to the list in the * Update it's status and add it to the list in the
* remote device object. * remote device object.
*/ */
isci_request_change_state(request, started);
list_add(&request->dev_node, &isci_device->reqs_in_process); list_add(&request->dev_node, &isci_device->reqs_in_process);
if (status == SCI_SUCCESS) { if (status == SCI_SUCCESS) {
/* Save the tag for possible task mgmt later. */ /* Save the tag for possible task mgmt later. */
request->io_tag = request->sci.io_tag; request->io_tag = request->sci.io_tag;
isci_request_change_state(request, started);
} else { } else {
/* The request did not really start in the /* The request did not really start in the
* hardware, so clear the request handle * hardware, so clear the request handle
* here so no terminations will be done. * here so no terminations will be done.
*/ */
request->terminated = true; request->terminated = true;
isci_request_change_state(request, completed);
} }
spin_unlock_irqrestore(&isci_host->scic_lock, flags); spin_unlock_irqrestore(&isci_host->scic_lock, flags);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment