Re: [PATCH 07/11] libata-eh-fw: implement freeze/thaw

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux