On Fri, 9 Jan 2004, Chuck Berg wrote:
> I have an HPT372 onboard a Soyo Dragon KT400 board. I get corruption when
> reading from drives on this controller. (I don't dare write, so I don't
> know if writes are affected as well). I'm using 2.6.1, but have experienced
> this problem with older kernels (at least it's not crashing anymore).
>
> Disabling DMA on these drives stops the corruption.
>
[SNIPPED...]
>
> 51642365 0 211
> 51642366 0 154
> 51642367 0 163
> 51642368 0 120
> 63700989 0 100
> 63700990 0 153
> 63700991 0 216
> 63700992 0 2
> 89260029 0 31
> 89260030 0 327
> 89260031 0 200
> 89260032 0 13
>
Since whole bytes are not written, this looks strangely like
an attempt to DMA to cached RAM! Since the CPU didn't write
to RAM, the cache doesn't "know" that somebody wrote to it
so the subsequent read comes from cache, not RAM. Somebody
who knows the KT400 software well, should verify that DMA-able
buffers are being used and the driver isn't writing directly
to a (ultimately) user buffer.
Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo _at_ vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Follow-Ups:
- Re: HPT372 DMA corruptionChuck Berg
- HPT372 DMA corruptionChuck Berg
- Prev by Date: Re: [autofs] [RFC] Towards a Modern Autofs
- Next by Date: Re: [RFC] Relaxed PIO read vs. DMA write ordering
- Previous by thread: HPT372 DMA corruption
- Next by thread: Re: HPT372 DMA corruption
- Indexes:[Main][Thread]