]> err.no Git - linux-2.6/commitdiff
[PATCH] libata: implement and use ata_deh_dev_action()
authorTejun Heo <htejun@gmail.com>
Sat, 24 Jun 2006 11:30:18 +0000 (20:30 +0900)
committerJeff Garzik <jeff@garzik.org>
Tue, 27 Jun 2006 00:59:27 +0000 (20:59 -0400)
Implement and use ata_eh_dev_action() which returns EH action mask for
a device.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/scsi/libata-eh.c

index 126be36289a77816edac83f5551d961cd23a5601..c7e6298db05053565d3a337f4baceed342dfa6ff 100644 (file)
@@ -93,6 +93,13 @@ static int ata_ering_map(struct ata_ering *ering,
        return rc;
 }
 
+static unsigned int ata_eh_dev_action(struct ata_device *dev)
+{
+       struct ata_eh_context *ehc = &dev->ap->eh_context;
+
+       return ehc->i.action | ehc->i.dev_action[dev->devno];
+}
+
 static void ata_eh_clear_action(struct ata_device *dev,
                                struct ata_eh_info *ehi, unsigned int action)
 {
@@ -1592,7 +1599,7 @@ static int ata_eh_revalidate_and_attach(struct ata_port *ap,
                unsigned int action;
 
                dev = &ap->device[i];
-               action = ehc->i.action | ehc->i.dev_action[dev->devno];
+               action = ata_eh_dev_action(dev);
 
                if (action & ATA_EH_REVALIDATE && ata_dev_enabled(dev)) {
                        if (ata_port_offline(ap)) {