aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/hpsa.c
diff options
context:
space:
mode:
authorStephen M. Cameron <scameron@beardog.cce.hp.com>2011-07-26 12:08:52 -0400
committerJames Bottomley <JBottomley@Parallels.com>2011-07-27 07:35:49 -0400
commitf6e76055ba778c56716ba79e106db28297775e87 (patch)
tree641447a8d81a114905463588d21dd820a40dfbb0 /drivers/scsi/hpsa.c
parentfec62c368b9c8b05d5124ca6c3b8336b537f26f3 (diff)
[SCSI] hpsa: retry commands completing with status of UNSOLICITED_ABORT
In a shared SAS setup, target devices may be reset by one of several hosts, and outstanding commands on that device will be completed to corresponding hosts with status of UNSOLICITED_ABORT. Such commands should be retried instead of being treated as i/o errors. Also fixed a nearby spelling error. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/hpsa.c')
-rw-r--r--drivers/scsi/hpsa.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 6bba23a2630..b64b29f648f 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -1219,8 +1219,8 @@ static void complete_scsi_command(struct CommandList *cp)
1219 dev_warn(&h->pdev->dev, "cp %p reports abort failed\n", cp); 1219 dev_warn(&h->pdev->dev, "cp %p reports abort failed\n", cp);
1220 break; 1220 break;
1221 case CMD_UNSOLICITED_ABORT: 1221 case CMD_UNSOLICITED_ABORT:
1222 cmd->result = DID_RESET << 16; 1222 cmd->result = DID_SOFT_ERROR << 16; /* retry the command */
1223 dev_warn(&h->pdev->dev, "cp %p aborted do to an unsolicited " 1223 dev_warn(&h->pdev->dev, "cp %p aborted due to an unsolicited "
1224 "abort\n", cp); 1224 "abort\n", cp);
1225 break; 1225 break;
1226 case CMD_TIMEOUT: 1226 case CMD_TIMEOUT: