If userspace has decided to disable a phy the kernel should honor that
and not inadvertantly re-enable the phy via error recovery. This is
more straightforward in the sata case where link recovery (via
libata-eh) is separate from sas_task cancelling in libsas-eh. Teach
libsas to accept -ENODEV as a successful response from I_T_nexus_reset
('successful' in terms of not escalating further).
This is a more comprehensive fix then "libsas: don't recover 'gone'
devices in sas_ata_hard_reset()", as it is no longer sata-specific.
aic94xx does check the return value from sas_phy_reset() so if the phy
is disabled we proceed with clearing the I_T_nexus.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
|
||
|---|---|---|
| .. | ||
| aic94xx.h | ||
| aic94xx_dev.c | ||
| aic94xx_dump.c | ||
| aic94xx_dump.h | ||
| aic94xx_hwi.c | ||
| aic94xx_hwi.h | ||
| aic94xx_init.c | ||
| aic94xx_reg.c | ||
| aic94xx_reg.h | ||
| aic94xx_reg_def.h | ||
| aic94xx_sas.h | ||
| aic94xx_scb.c | ||
| aic94xx_sds.c | ||
| aic94xx_sds.h | ||
| aic94xx_seq.c | ||
| aic94xx_seq.h | ||
| aic94xx_task.c | ||
| aic94xx_tmf.c | ||
| Kconfig | ||
| Makefile | ||