diff options
author | Unicorn Chang <uchang@tw.ibm.com> | 2006-08-01 12:18:07 +0800 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-08-03 17:34:52 -0400 |
commit | f1d39b291e2263f5e2f2ec5d4061802f76d8ae67 (patch) | |
tree | 29c33d63b3679103459932d43b8818abdcc7d3d5 | |
parent | fd60ae404f104f12369e654af9cf03b1f1047661 (diff) | |
download | linux-3.10-f1d39b291e2263f5e2f2ec5d4061802f76d8ae67.tar.gz linux-3.10-f1d39b291e2263f5e2f2ec5d4061802f76d8ae67.tar.bz2 linux-3.10-f1d39b291e2263f5e2f2ec5d4061802f76d8ae67.zip |
[PATCH] ahci: skip protocol test altogether in spurious interrupt code
Skip protocol test altogether in spurious interrupt code. If PIOS is received
when it shouldn't, ahci will raise protocol violation.
Signed-off-by: Unicorn Chang <uchang@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/scsi/ahci.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/scsi/ahci.c b/drivers/scsi/ahci.c index 77e7202a0eb..904c25fb4ba 100644 --- a/drivers/scsi/ahci.c +++ b/drivers/scsi/ahci.c @@ -940,14 +940,8 @@ static void ahci_host_intr(struct ata_port *ap) return; /* ignore interim PIO setup fis interrupts */ - if (ata_tag_valid(ap->active_tag)) { - struct ata_queued_cmd *qc = - ata_qc_from_tag(ap, ap->active_tag); - - if (qc && qc->tf.protocol == ATA_PROT_PIO && - (status & PORT_IRQ_PIOS_FIS)) - return; - } + if (ata_tag_valid(ap->active_tag) && (status & PORT_IRQ_PIOS_FIS)) + return; if (ata_ratelimit()) ata_port_printk(ap, KERN_INFO, "spurious interrupt " |