summaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-eh.c
diff options
context:
space:
mode:
authorTejun Heo2007-09-23 06:14:12 +0200
committerJeff Garzik2007-10-12 20:55:40 +0200
commit422c9daa8b5bea09f3393b11a106afd68850b39b (patch)
tree76a4d15d77a26c049ca80ae850473b83df47d332 /drivers/ata/libata-eh.c
parentlibata-pmp-prep: add PMP related constants, fields, ops and update helpers (diff)
downloadkernel-qcow2-linux-422c9daa8b5bea09f3393b11a106afd68850b39b.tar.gz
kernel-qcow2-linux-422c9daa8b5bea09f3393b11a106afd68850b39b.tar.xz
kernel-qcow2-linux-422c9daa8b5bea09f3393b11a106afd68850b39b.zip
libata-pmp-prep: add @new_class to ata_dev_revalidate()
Consider newly found class code while revalidating. PMP resetting always results in valid class code and issuing PMP commands to ATA/ATAPI device isn't very attractive. Add @new_class to ata_dev_revalidate() and check class code for revalidation. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/libata-eh.c')
-rw-r--r--drivers/ata/libata-eh.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index daa2f74f73c8..eb087bbc4771 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -2104,7 +2104,8 @@ static int ata_eh_revalidate_and_attach(struct ata_link *link,
}
ata_eh_about_to_do(link, dev, ATA_EH_REVALIDATE);
- rc = ata_dev_revalidate(dev, readid_flags);
+ rc = ata_dev_revalidate(dev, ehc->classes[dev->devno],
+ readid_flags);
if (rc)
goto err;