Tejun Heo wrote: > Albert Lee wrote: > >> With the new ata_drive_probe_reset(), my old Acer 787E drive still got >> "irq nobody cared" >> when probed. (dmesg attached. The problem only seen on this drive; >> other CD-ROM drives works ok.) >> The pata_pdc2027x driver has been converted to the ->probe_reset() >> interface. >> Is there anything else I should do for pata_pdc2027x driver to avoid >> the "irq nobody cared"? > > > You need to implement both ->probe_reset() and ->error_handler() & > friends to avoid "irq nobody cared". Note that hotplug merges probing > into ->error_handler() and removes ->probe_reset(). > > The actual part which helps avoiding "irq nobody cared" during > initialization is proper implementation of ->freeze() and ->thaw(). If > the controller can detect spurious interrupts, freezing on spurious > interrupts can help avoiding screaming interrupts, too. > Adding the required ->freeze() etc fixes the "irq nobody cares" problem. Although the Acer 787E drive still failed to IDENTIFY and doesn't work, the other two good drives are probed and work fine. With the new EH, libata looks more robust with faulty hardware. :) Thanks, Albert === pata_pdc2027x 0000:02:05.0: version 0.74 ACPI: PCI Interrupt 0000:02:05.0[A] -> Link [LNK1] -> GSI 5 (level, low) -> IRQ 5 pata_pdc2027x 0000:02:05.0: PLL input clock 16728 kHz ata5: PATA max UDMA/133 cmd 0xE0A917C0 ctl 0xE0A91FDA bmdma 0xE0A91000 irq 5 ata6: PATA max UDMA/133 cmd 0xE0A915C0 ctl 0xE0A91DDA bmdma 0xE0A91008 irq 5 ata5.00: cfg 49:0b00 82:0210 83:1000 84:0000 85:0000 86:0000 87:0000 88:0407 ata5.00: ATAPI, max UDMA/33 ata5.01: cfg 49:0f00 82:421c 83:0000 84:0000 85:0000 86:0000 87:0000 88:0407 ata5.01: ATAPI, max UDMA/33 ata5.00: configured for UDMA/33 ata5.01: configured for UDMA/33 scsi4 : pata_pdc2027x ata6.00: cfg 49:0b00 82:0000 83:0000 84:0000 85:0000 86:0000 87:0000 88:0000 ata6.00: ATAPI, max MWDMA1 ata6.00: qc timeout (cmd 0xa1) ata6.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata6.00: revalidation failed (errno=-5) ata6.00: limiting speed to MWDMA0 ata6.00: cfg 49:2020 82:0000 83:0000 84:0000 85:0000 86:0000 87:0000 88:0000 ata6.00: ATAPI, max PIO0 ata6.00: failed to set xfermode (err_mask=0x1) ata6.00: disabled scsi5 : pata_pdc2027x Vendor: LITE-ON Model: CD-RW SOHR-5238S Rev: 4S07 Type: CD-ROM ANSI SCSI revision: 05 Vendor: HL-DT-ST Model: DVDRAM GSA-4163B Rev: A101 Type: CD-ROM ANSI SCSI revision: 05 sr0: scsi3-mmc drive: 40x/40x writer cd/rw xa/form2 cdda tray Uniform CD-ROM driver Revision: 3.20 sr 4:0:0:0: Attached scsi CD-ROM sr0 sr1: scsi3-mmc drive: 40x/40x writer dvd-ram cd/rw xa/form2 cdda tray sr 4:0:1:0: Attached scsi CD-ROM sr1 - : 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