summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/scsi_error.c
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2005-12-15 13:15:27 -0500
committerLen Brown <len.brown@intel.com>2005-12-15 13:15:27 -0500
commit5b2db367a28c12e8dfd0b404d9ea35e948c5d7b3 (patch)
tree8ef2f739fc91acda0fb05797cb450b5789d79c59 /drivers/scsi/scsi_error.c
parentd3e4cefc86ce1aefc0e9aebdc56308cb4bd51997 (diff)
parent7116317dc9148d783846299fc80a7d377baa6dca (diff)
Auto-update from upstream
Diffstat (limited to 'drivers/scsi/scsi_error.c')
-rw-r--r--drivers/scsi/scsi_error.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c
index 18c5d252301..c0ae9e965f6 100644
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@ -422,10 +422,15 @@ static int scsi_eh_completed_normally(struct scsi_cmnd *scmd)
**/
static void scsi_eh_done(struct scsi_cmnd *scmd)
{
+ struct completion *eh_action;
+
SCSI_LOG_ERROR_RECOVERY(3,
printk("%s scmd: %p result: %x\n",
__FUNCTION__, scmd, scmd->result));
- complete(scmd->device->host->eh_action);
+
+ eh_action = scmd->device->host->eh_action;
+ if (eh_action)
+ complete(eh_action);
}
/**