isci: fix scic_sds_remote_device_terminate_requests
Dan Williams [Wed, 29 Jun 2011 16:45:48 +0000 (09:45 -0700)]
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>

drivers/scsi/isci/remote_device.c

index a81a864..71ab908 100644 (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 isci_host *ihost = scic_to_ihost(scic);
-       u32 i, request_count = sci_dev->started_request_count;
        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];
                enum sci_status s;