isci: fix scic_sds_remote_device_terminate_requests

Commit 0815632 "isci: unify remote_device stop_handlers" introduced the
possibility that not all requests get terminated if we reach the
request_count.  Now that we properly reference count devices we don't
need this self-defense and can do the straightforward scan of all active
requests.

Reported-by: Jeff Skirvin <jeffrey.d.skirvin@intel.com>
Acked-by: Jeff Skirvin <jeffrey.d.skirvin@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
Dan Williams 2011-06-29 09:45:48 -07:00
parent 852809559e
commit 76802ce675

View File

@ -137,10 +137,10 @@ static enum sci_status scic_sds_remote_device_terminate_requests(struct scic_sds
{ {
struct scic_sds_controller *scic = sci_dev->owning_port->owning_controller; struct scic_sds_controller *scic = sci_dev->owning_port->owning_controller;
struct isci_host *ihost = scic_to_ihost(scic); struct isci_host *ihost = scic_to_ihost(scic);
u32 i, request_count = sci_dev->started_request_count;
enum sci_status status = SCI_SUCCESS; enum sci_status status = SCI_SUCCESS;
u32 i;
for (i = 0; i < SCI_MAX_IO_REQUESTS && i < request_count; i++) { for (i = 0; i < SCI_MAX_IO_REQUESTS; i++) {
struct isci_request *ireq = ihost->reqs[i]; struct isci_request *ireq = ihost->reqs[i];
enum sci_status s; enum sci_status s;