diff options
| author | Christof Schmitt <christof.schmitt@de.ibm.com> | 2010-07-08 09:53:09 +0200 | 
|---|---|---|
| committer | James Bottomley <James.Bottomley@suse.de> | 2010-07-28 09:46:41 -0500 | 
| commit | 9c785d944e6fa7eef390c799b93e43243505780c (patch) | |
| tree | b17a4ef36212db7f2a5cc34081dd0f49ae829c61 | |
| parent | 835dc29887073eec7817559a07558f955383d099 (diff) | |
[SCSI] zfcp: Fail erp after timeout
After a timeout notification, do not try to run the erp strategy.
Return from the erp with "failed" to possibly trigger a retry.
Reviewed-by: Swen Schillig <swen@vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| -rw-r--r-- | drivers/s390/scsi/zfcp_erp.c | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c index 03cd6365ed04..64471ba6ac09 100644 --- a/drivers/s390/scsi/zfcp_erp.c +++ b/drivers/s390/scsi/zfcp_erp.c @@ -1246,6 +1246,11 @@ static int zfcp_erp_strategy(struct zfcp_erp_action *erp_action)  		goto unlock;  	} +	if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT) { +		retval = ZFCP_ERP_FAILED; +		goto check_target; +	} +  	zfcp_erp_action_to_running(erp_action);  	/* no lock to allow for blocking operations */ @@ -1278,6 +1283,7 @@ static int zfcp_erp_strategy(struct zfcp_erp_action *erp_action)  		goto unlock;  	} +check_target:  	retval = zfcp_erp_strategy_check_target(erp_action, retval);  	zfcp_erp_action_dequeue(erp_action);  	retval = zfcp_erp_strategy_statechange(erp_action, retval); | 
