aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-04-02 05:51:52 -0400
committerJeff Garzik <jeff@garzik.org>2006-04-02 10:09:19 -0400
commitc43c555c3a6db7f0b55fd9b66d7ecff16e827d4e (patch)
tree3036762ea56f742414eaaf098f9f5f34dedb03e4
parent5eb45c02a9944e813a0b82457607557a1f2c64b5 (diff)
[PATCH] libata: ATA_FLAG_IN_EH is not used, kill it
Kill unused flag ATA_FLAG_IN_EH. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/scsi/libata-scsi.c17
-rw-r--r--include/linux/libata.h1
2 files changed, 4 insertions, 14 deletions
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c
index c1a4b29a9ae1..bcbf71e9895b 100644
--- a/drivers/scsi/libata-scsi.c
+++ b/drivers/scsi/libata-scsi.c
@@ -779,20 +779,15 @@ enum scsi_eh_timer_return ata_scsi_timed_out(struct scsi_cmnd *cmd)
779 779
780int ata_scsi_error(struct Scsi_Host *host) 780int ata_scsi_error(struct Scsi_Host *host)
781{ 781{
782 struct ata_port *ap; 782 struct ata_port *ap = (struct ata_port *)&host->hostdata[0];
783 unsigned long flags;
784 783
785 DPRINTK("ENTER\n"); 784 DPRINTK("ENTER\n");
786 785
787 ap = (struct ata_port *) &host->hostdata[0]; 786 /* synchronize with IRQ handler and port task */
787 spin_unlock_wait(&ap->host_set->lock);
788 ata_port_flush_task(ap);
788 789
789 spin_lock_irqsave(&ap->host_set->lock, flags);
790 WARN_ON(ap->flags & ATA_FLAG_IN_EH);
791 ap->flags |= ATA_FLAG_IN_EH;
792 WARN_ON(ata_qc_from_tag(ap, ap->active_tag) == NULL); 790 WARN_ON(ata_qc_from_tag(ap, ap->active_tag) == NULL);
793 spin_unlock_irqrestore(&ap->host_set->lock, flags);
794
795 ata_port_flush_task(ap);
796 791
797 ap->ops->eng_timeout(ap); 792 ap->ops->eng_timeout(ap);
798 793
@@ -800,10 +795,6 @@ int ata_scsi_error(struct Scsi_Host *host)
800 795
801 scsi_eh_flush_done_q(&ap->eh_done_q); 796 scsi_eh_flush_done_q(&ap->eh_done_q);
802 797
803 spin_lock_irqsave(&ap->host_set->lock, flags);
804 ap->flags &= ~ATA_FLAG_IN_EH;
805 spin_unlock_irqrestore(&ap->host_set->lock, flags);
806
807 DPRINTK("EXIT\n"); 798 DPRINTK("EXIT\n");
808 return 0; 799 return 0;
809} 800}
diff --git a/include/linux/libata.h b/include/linux/libata.h
index a4a1e6304e78..e20b0bfbd5f2 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -152,7 +152,6 @@ enum {
152 ATA_FLAG_IRQ_MASK = (1 << 14), /* Mask IRQ in PIO xfers */ 152 ATA_FLAG_IRQ_MASK = (1 << 14), /* Mask IRQ in PIO xfers */
153 153
154 ATA_FLAG_FLUSH_PORT_TASK = (1 << 15), /* Flush port task */ 154 ATA_FLAG_FLUSH_PORT_TASK = (1 << 15), /* Flush port task */
155 ATA_FLAG_IN_EH = (1 << 16), /* EH in progress */
156 155
157 ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */ 156 ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */
158 ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */ 157 ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */