lkml.org 
[lkml]   [2002]   [Jul]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Safety of IRQ during i/o
Alan Cox wrote:
> On Thu, 2002-07-25 at 08:54, Marcin Dalecki wrote:
>
>>>Yup, for PIO unmask (if possible) is a must.
>>
>>It's even for DMA a good thing, since the IRQ handler in question can
>>reenter the RQ handler. The invention of the not unmasking
>>behaviour in Linux is the result of some not entierly ATA-2 compliant
>>devices long long time ago gone. Basically XT disks on PC. They did have
>>the habbit of splewing IRQs too early for command ACK.
>
>
> There are also some older systems where if the block transfer of the IDE
> data didn't keep up with the controller instead of handshaking properly
> it kind of dribbled random numbers onto the disk.
>
> Unless anyone knows of PCI era devices with this problem I would be
> inclined to agree that we should default to IRQ unmasking in the 2.5 IDE
> code if the IDE controller is PCI.

Tough not 100% but I'm about 99% sure that having this kind of problem
no PCI bus would prevent any kind of proper level triggered IRQ handling
on behalf of the host controller... At least it seems very very
unlikely. (Data transfer problems are a different story of course.)
And I personally never ever expirenced *any* problems with -u1 on any
Linux systems I ever got in to my hands (startting 386sx 16MHz...).
Not even at the time I run the really buggy CMD640 mask revision for 3
years.

> For old ISA/VLB controllers its safer left as is, and nobody running a
> machine like that can realistically expect good performance without hand
> tuning stuff anyway

Sounds fairly well and is easy to implement...just adding

if (ch->pci_dev != NULL && ch->umask)

at the corresponding plase in ata_irq_request will do the trick.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:27    [W:0.240 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site