mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-28 09:31:14 +00:00
[SCSI] libsas: Handle SCSI commands that complete with failure codes
This patch moves the code that handles SAS failures out of the main EH function and into a separate function. It also detects commands that have no sas_task (i.e. they completed, but with error data) and sends them into scsi_error for processing. This allows us to handle SCSI errors (and enables auto-spinup as a side effect) instead of dropping them on the floor and falling into an infinite loop. It also requires the implementation of a device reset function, which the SAS failure code has been modified to employ for REQ_DEVICE_RESET. Signed-off-by: Darrick J. Wong <djwong@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
dca84e4694
commit
ad689233be
2 changed files with 105 additions and 44 deletions
|
@ -660,5 +660,6 @@ void sas_init_dev(struct domain_device *);
|
|||
|
||||
void sas_task_abort(struct sas_task *);
|
||||
int __sas_task_abort(struct sas_task *);
|
||||
int sas_eh_device_reset_handler(struct scsi_cmnd *cmd);
|
||||
|
||||
#endif /* _SASLIB_H_ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue