diff options
Diffstat (limited to 'drivers/scsi/libata-eh.c')
-rw-r--r-- | drivers/scsi/libata-eh.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/scsi/libata-eh.c b/drivers/scsi/libata-eh.c index b53e2e7db498..733dfa532977 100644 --- a/drivers/scsi/libata-eh.c +++ b/drivers/scsi/libata-eh.c | |||
@@ -287,9 +287,13 @@ void ata_scsi_error(struct Scsi_Host *host) | |||
287 | /* clean up */ | 287 | /* clean up */ |
288 | spin_lock_irqsave(hs_lock, flags); | 288 | spin_lock_irqsave(hs_lock, flags); |
289 | 289 | ||
290 | if (ap->flags & ATA_FLAG_SCSI_HOTPLUG) | ||
291 | queue_work(ata_aux_wq, &ap->hotplug_task); | ||
292 | |||
290 | if (ap->flags & ATA_FLAG_RECOVERED) | 293 | if (ap->flags & ATA_FLAG_RECOVERED) |
291 | ata_port_printk(ap, KERN_INFO, "EH complete\n"); | 294 | ata_port_printk(ap, KERN_INFO, "EH complete\n"); |
292 | ap->flags &= ~ATA_FLAG_RECOVERED; | 295 | |
296 | ap->flags &= ~(ATA_FLAG_SCSI_HOTPLUG | ATA_FLAG_RECOVERED); | ||
293 | 297 | ||
294 | /* tell wait_eh that we're done */ | 298 | /* tell wait_eh that we're done */ |
295 | ap->flags &= ~ATA_FLAG_EH_IN_PROGRESS; | 299 | ap->flags &= ~ATA_FLAG_EH_IN_PROGRESS; |