Commit 6e2802a7 authored by Jeff Skirvin's avatar Jeff Skirvin Committed by Dan Williams

isci: All pending requests are terminated before stopping the device.

Make sure all pending I/O including any in the libsas error handler
process is cleaned-up.
Signed-off-by: default avatarJeff Skirvin <jeffrey.d.skirvin@intel.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent aa145102
...@@ -380,6 +380,10 @@ enum sci_status isci_remote_device_stop(struct isci_host *ihost, struct isci_rem ...@@ -380,6 +380,10 @@ enum sci_status isci_remote_device_stop(struct isci_host *ihost, struct isci_rem
"%s: isci_device = %p\n", __func__, idev); "%s: isci_device = %p\n", __func__, idev);
isci_remote_device_change_state(idev, isci_stopping); isci_remote_device_change_state(idev, isci_stopping);
/* Kill all outstanding requests. */
isci_remote_device_nuke_requests(idev);
set_bit(IDEV_STOP_PENDING, &idev->flags); set_bit(IDEV_STOP_PENDING, &idev->flags);
spin_lock_irqsave(&ihost->scic_lock, flags); spin_lock_irqsave(&ihost->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