diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-02-16 00:20:18 +0300 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-02-16 00:20:18 +0300 |
commit | 56012808f4d5606e401539f663d92009d964425b (patch) | |
tree | f3736a97725647393a2db7c95462d857115197ca /drivers/scsi/scsi_transport_fc.c | |
parent | a814290e17ae314bd614476cffc6119846eca27e (diff) | |
parent | b2a731aa5cbca7e0252da75e16de7ae5feb1313a (diff) | |
download | linux-56012808f4d5606e401539f663d92009d964425b.tar.xz |
Merge branch 'for-rmk' of git://git.marvell.com/orion into devel-stable
Conflicts:
arch/arm/Makefile
Diffstat (limited to 'drivers/scsi/scsi_transport_fc.c')
-rw-r--r-- | drivers/scsi/scsi_transport_fc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c index ddfcecd5099f..653f22a8deb9 100644 --- a/drivers/scsi/scsi_transport_fc.c +++ b/drivers/scsi/scsi_transport_fc.c @@ -3527,7 +3527,10 @@ fc_bsg_job_timeout(struct request *req) if (!done && i->f->bsg_timeout) { /* call LLDD to abort the i/o as it has timed out */ err = i->f->bsg_timeout(job); - if (err) + if (err == -EAGAIN) { + job->ref_cnt--; + return BLK_EH_RESET_TIMER; + } else if (err) printk(KERN_ERR "ERROR: FC BSG request timeout - LLD " "abort failed with status %d\n", err); } |