diff options
author | Tejun Heo <htejun@gmail.com> | 2006-06-24 20:30:19 +0900 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-06-26 20:59:27 -0400 |
commit | beb07c1a56e2cff3842e22c473bd1aaaea08e532 (patch) | |
tree | a78fc940254de778c96988876001504ab9c945c9 /drivers/scsi | |
parent | 64f65ca6e7a5a42df22ff29dadfff389dc388f65 (diff) | |
download | op-kernel-dev-beb07c1a56e2cff3842e22c473bd1aaaea08e532.zip op-kernel-dev-beb07c1a56e2cff3842e22c473bd1aaaea08e532.tar.gz |
[PATCH] libata: clear EH action on device detach
Clear related EH action on device detach such that new device doesn't
receive EH actions scheduled for the old one.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/libata-eh.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/libata-eh.c b/drivers/scsi/libata-eh.c index c7e6298..bf5a72a 100644 --- a/drivers/scsi/libata-eh.c +++ b/drivers/scsi/libata-eh.c @@ -734,6 +734,10 @@ static void ata_eh_detach_dev(struct ata_device *dev) ap->flags |= ATA_FLAG_SCSI_HOTPLUG; } + /* clear per-dev EH actions */ + ata_eh_clear_action(dev, &ap->eh_info, ATA_EH_PERDEV_MASK); + ata_eh_clear_action(dev, &ap->eh_context.i, ATA_EH_PERDEV_MASK); + spin_unlock_irqrestore(ap->lock, flags); } |