提交 6e2802a7 编写于 作者: J Jeff Skirvin 提交者: 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: NJeff Skirvin <jeffrey.d.skirvin@intel.com>
Signed-off-by: NDan Williams <dan.j.williams@intel.com>
上级 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% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册