Now that hotplug support is online, there is no reason to reset frozen empty port with pending hotplug probe (it will do the same thing). Skip EH reset in such cases. Signed-off-by: Tejun Heo <htejun@xxxxxxxxx> --- drivers/scsi/libata-eh.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) 0d1308467ab2bc82faee607440c00b9a14b0af71 diff --git a/drivers/scsi/libata-eh.c b/drivers/scsi/libata-eh.c index 443f81f..d54ebb1 100644 --- a/drivers/scsi/libata-eh.c +++ b/drivers/scsi/libata-eh.c @@ -1208,8 +1208,12 @@ int ata_eh_revive(struct ata_port *ap, u } action &= ~ATA_PORT_REVALIDATE; - /* Skip reset if possible. */ - if (!nr_enabled && !(ap->flags & ATA_FLAG_FROZEN)) + /* Skip reset if possible. Note that ata_eh_hotplug() might + * determine not to perform reset and EH can finish with a + * frozen port. EH framework will take care of such cases. + */ + if (!nr_enabled && (!(ap->flags & ATA_FLAG_FROZEN) || + ap->hotplug_flags & ATA_HOTPLUG_PROBE)) goto out; /* give devices some time to breath */ -- 1.2.4 - : send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html