]> err.no Git - linux-2.6/blobdiff - drivers/scsi/scsi_error.c
Merge branch 'work'
[linux-2.6] / drivers / scsi / scsi_error.c
index 53ea62d3b53dec63bef0ca6b04289ab891643a89..a2333d2c7af0be4712651b2780b7cc10566dab3b 100644 (file)
@@ -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);
 }
 
 /**