Re: [PATCH] libata: disable_irq() during polling IDENTIFY (take 2)

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

 



Alan Cox wrote:
> On Tue, 08 May 2007 19:30:24 +0800
> Albert Lee <albertcc@xxxxxxxxxx> wrote:
> 
>> Problem:
>>   Kernel got "irq 5: nobody cared" when using
>>   libata + polling IDENTIFY + Promise 20275 adapter + Benq DW1620 drive.
>>
>>   Detail message available in bug 8441 (http://bugzilla.kernel.org/show_bug.cgi?id=8441).
>>
>> Cause:
>>   The Benq DW1620 drive raises INTRQ during polling IDENTIFY PACKET DEVICE, 
>>   even if nIEN = 1.
>>
>> Proposed fix:
>>   Ack the possibly unexpected irq in ata_interrupt().
>>
>> Signed-off-by: Albert Lee <albertcc@xxxxxxxxxx>
> 
> NAK
> 
> We can't do this. A PIO data transfer could take far far too long to be
> under IRQ block (its already a problem on a big 32bit box when we bounce
> buffer it sometimes).

Oh well, that's how we do PIO data transfer when not polling anyway.  We
kick HSM directly from the interrupt handler and do PIO inside the
interrupt handler.  The change made here is to make polling PIO act the
same way.

-- 
tejun
-
To unsubscribe from this list: 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