diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2007-05-08 05:18:50 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-05-08 12:57:04 -0400 |
commit | 3b02191aaeedfffe8cba258ebc212c577c278dbe (patch) | |
tree | 7b9ea9927b74cbbd5c075b28b11c61b65191207d /drivers/s390/scsi/zfcp_erp.c | |
parent | ca2d02c2f9ea476062ae181eec60b8bcd97857d6 (diff) |
[SCSI] zfcp: clear adapter failed flag if an fsf request times out.
Must clear adapter failed flag if an fsf request times out. This is
necessary because on link down situations the failed flags gets set
but the QDIO queues are still up. Since an adapter reopen will be
skipped if the failed flag is set an adapter_reopen that is issued
on fsf request timeout has no effect if the local link is down.
Might lead to locked up system if the SCSI stack is waiting for abort
completion.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Swen Schillig <swen@vnet.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/s390/scsi/zfcp_erp.c')
-rw-r--r-- | drivers/s390/scsi/zfcp_erp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c index e2a3d6fe1651..aef66bc2b6ca 100644 --- a/drivers/s390/scsi/zfcp_erp.c +++ b/drivers/s390/scsi/zfcp_erp.c | |||
@@ -179,7 +179,7 @@ static void zfcp_close_fsf(struct zfcp_adapter *adapter) | |||
179 | static void zfcp_fsf_request_timeout_handler(unsigned long data) | 179 | static void zfcp_fsf_request_timeout_handler(unsigned long data) |
180 | { | 180 | { |
181 | struct zfcp_adapter *adapter = (struct zfcp_adapter *) data; | 181 | struct zfcp_adapter *adapter = (struct zfcp_adapter *) data; |
182 | zfcp_erp_adapter_reopen(adapter, 0); | 182 | zfcp_erp_adapter_reopen(adapter, ZFCP_STATUS_COMMON_ERP_FAILED); |
183 | } | 183 | } |
184 | 184 | ||
185 | void zfcp_fsf_start_timer(struct zfcp_fsf_req *fsf_req, unsigned long timeout) | 185 | void zfcp_fsf_start_timer(struct zfcp_fsf_req *fsf_req, unsigned long timeout) |