diff options
author | Christof Schmitt <christof.schmitt@de.ibm.com> | 2009-04-17 09:08:11 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-04-27 11:07:33 -0400 |
commit | c6936e7f34383db2f5038dfa2f0c168ebc2920e5 (patch) | |
tree | cbdc7a3ab0707112b6e21b51b25a0f8a8d1c59de | |
parent | 5b43e719308143ac02e6f4ee24132f8acad99ea7 (diff) |
[SCSI] zfcp: Fix abort handler for completions in progress
When the abort handler cannot find a pending FSF request, the request
completion could just be running. This means we cannot return SUCCESS,
since this would lead to call to scsi_done after exiting the SCSI
error handler which is not allowed.
Reviewed-by: Martin Petermann <martin@linux.vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r-- | drivers/s390/scsi/zfcp_scsi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c index 5b11386d70bb..e7d065209065 100644 --- a/drivers/s390/scsi/zfcp_scsi.c +++ b/drivers/s390/scsi/zfcp_scsi.c | |||
@@ -171,7 +171,7 @@ static int zfcp_scsi_eh_abort_handler(struct scsi_cmnd *scpnt) | |||
171 | write_unlock_irqrestore(&adapter->abort_lock, flags); | 171 | write_unlock_irqrestore(&adapter->abort_lock, flags); |
172 | zfcp_scsi_dbf_event_abort("lte1", adapter, scpnt, NULL, | 172 | zfcp_scsi_dbf_event_abort("lte1", adapter, scpnt, NULL, |
173 | old_req_id); | 173 | old_req_id); |
174 | return SUCCESS; | 174 | return FAILED; /* completion could be in progress */ |
175 | } | 175 | } |
176 | old_req->data = NULL; | 176 | old_req->data = NULL; |
177 | 177 | ||