lkml.org 
[lkml]   [2003]   [Feb]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: 2.4.21-pre4: PDC ide driver problems with shared interrupts
From
Date
On Wed, 2003-02-05 at 18:19, Ross Biro wrote:
> Benjamin Herrenschmidt wrote:
>
> >While I agree with you here, I don't think it's what's happening.
> > /* clear INTR & ERROR flags */
> > hwif->OUTB(dma_stat|6, hwif->dma_status);
> >
> >
> >
> You have way to much faith in the hardware. Promise is especially known
> for not keeping to the spec. I wouldn't trust the interrupt bit to be
> valid unless a dma is actually active, i.e. that
>
> hwif->OUTB(hwif->INB(dma_base)|1, dma_base);
>
> has actually been written.
>
> I've actually had a manufacturer tell me that they don't worry about the
> spec, just making things work with Windows.

Ok, so that gives us 2 possibilities. The above problem, which would be
fixed by locking all around ide_dma_read/write (or rather in the
_caller_, seems better so we don't have to drop the lock for ATAPI).

And a possible wraparound of waiting_for_dma if 255 IRQs come in from
whatever device we share the IRQ line with.

I beleive both need fixing...

Ben.

-
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:32    [W:0.128 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site