aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-06-12 01:11:43 -0400
committerJeff Garzik <jeff@garzik.org>2006-06-12 02:10:26 -0400
commitaeb2ecd6096182cc080d37679080c0f088dcd4a4 (patch)
tree8e103a541f59c8a31656666352a4d5ea10c00088
parentf9be7113b56eb5d013a611d9c65e8d1d2d3f7c94 (diff)
[PATCH] libata: fast exit from EH while unloading
Make EH exit fast if the port is being unloaded. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/scsi/libata-eh.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/libata-eh.c b/drivers/scsi/libata-eh.c
index 782dfba573a9..531a4e11c078 100644
--- a/drivers/scsi/libata-eh.c
+++ b/drivers/scsi/libata-eh.c
@@ -1680,6 +1680,10 @@ static int ata_eh_recover(struct ata_port *ap, ata_prereset_fn_t prereset,
1680 down_xfermask = 0; 1680 down_xfermask = 0;
1681 rc = 0; 1681 rc = 0;
1682 1682
1683 /* if UNLOADING, finish immediately */
1684 if (ap->flags & ATA_FLAG_UNLOADING)
1685 goto out;
1686
1683 /* skip EH if possible. */ 1687 /* skip EH if possible. */
1684 if (ata_eh_skip_recovery(ap)) 1688 if (ata_eh_skip_recovery(ap))
1685 ehc->i.action = 0; 1689 ehc->i.action = 0;