|
@@ -615,7 +615,7 @@ static int scsi_try_bus_device_reset(struct scsi_cmnd *scmd)
|
|
|
return rtn;
|
|
|
}
|
|
|
|
|
|
-static int __scsi_try_to_abort_cmd(struct scsi_cmnd *scmd)
|
|
|
+static int scsi_try_to_abort_cmd(struct scsi_cmnd *scmd)
|
|
|
{
|
|
|
if (!scmd->device->host->hostt->eh_abort_handler)
|
|
|
return FAILED;
|
|
@@ -623,31 +623,9 @@ static int __scsi_try_to_abort_cmd(struct scsi_cmnd *scmd)
|
|
|
return scmd->device->host->hostt->eh_abort_handler(scmd);
|
|
|
}
|
|
|
|
|
|
-/**
|
|
|
- * scsi_try_to_abort_cmd - Ask host to abort a running command.
|
|
|
- * @scmd: SCSI cmd to abort from Lower Level.
|
|
|
- *
|
|
|
- * Notes:
|
|
|
- * This function will not return until the user's completion function
|
|
|
- * has been called. there is no timeout on this operation. if the
|
|
|
- * author of the low-level driver wishes this operation to be timed,
|
|
|
- * they can provide this facility themselves. helper functions in
|
|
|
- * scsi_error.c can be supplied to make this easier to do.
|
|
|
- */
|
|
|
-static int scsi_try_to_abort_cmd(struct scsi_cmnd *scmd)
|
|
|
-{
|
|
|
- /*
|
|
|
- * scsi_done was called just after the command timed out and before
|
|
|
- * we had a chance to process it. (db)
|
|
|
- */
|
|
|
- if (scmd->serial_number == 0)
|
|
|
- return SUCCESS;
|
|
|
- return __scsi_try_to_abort_cmd(scmd);
|
|
|
-}
|
|
|
-
|
|
|
static void scsi_abort_eh_cmnd(struct scsi_cmnd *scmd)
|
|
|
{
|
|
|
- if (__scsi_try_to_abort_cmd(scmd) != SUCCESS)
|
|
|
+ if (scsi_try_to_abort_cmd(scmd) != SUCCESS)
|
|
|
if (scsi_try_bus_device_reset(scmd) != SUCCESS)
|
|
|
if (scsi_try_target_reset(scmd) != SUCCESS)
|
|
|
if (scsi_try_bus_reset(scmd) != SUCCESS)
|