From: Stephen M. Cameron Date: Tue, 26 Jul 2011 16:08:52 +0000 (-0500) Subject: [SCSI] hpsa: retry commands completing with status of UNSOLICITED_ABORT X-Git-Tag: upstream/snapshot3+hdmi~9421^2~28 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f6e76055ba778c56716ba79e106db28297775e87;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git [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 Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c index 6bba23a..b64b29f 100644 --- a/drivers/scsi/hpsa.c +++ b/drivers/scsi/hpsa.c @@ -1219,8 +1219,8 @@ static void complete_scsi_command(struct CommandList *cp) dev_warn(&h->pdev->dev, "cp %p reports abort failed\n", cp); break; case CMD_UNSOLICITED_ABORT: - cmd->result = DID_RESET << 16; - dev_warn(&h->pdev->dev, "cp %p aborted do to an unsolicited " + cmd->result = DID_SOFT_ERROR << 16; /* retry the command */ + dev_warn(&h->pdev->dev, "cp %p aborted due to an unsolicited " "abort\n", cp); break; case CMD_TIMEOUT: