pdc_adma was overlooked and broken by the irq-pio patch: Only HSM_ST_LAST interrupts should be delivered to this LLDD. Adding ATA_FLAG_PIO_POLLING to pdc_adma fixes the problem (temporarily), before we convert the irq handler of pdc_adma to handle all interrupts. Signed-off-by: Albert Lee <albertcc@xxxxxxxxxx> --- Patch against 2.6.18-rc4 and tested ok by Tejun. --- linux-2.6.18-rc4/drivers/scsi/pdc_adma.c 2006-08-08 14:03:21.000000000 +0800 +++ linux-2.6.18-rc4-adma-poll/drivers/scsi/pdc_adma.c 2006-08-08 14:05:13.000000000 +0800 @@ -183,7 +183,8 @@ static struct ata_port_info adma_port_in { .sht = &adma_ata_sht, .host_flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | - ATA_FLAG_NO_LEGACY | ATA_FLAG_MMIO, + ATA_FLAG_NO_LEGACY | ATA_FLAG_MMIO | + ATA_FLAG_PIO_POLLING, .pio_mask = 0x10, /* pio4 */ .udma_mask = 0x1f, /* udma0-4 */ .port_ops = &adma_ata_ops, - : send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html