On Tue, May 18, 2004 at 09:50:55PM +0200, Ralf Baechle wrote: > On Tue, May 18, 2004 at 08:10:19PM +0100, Peter Horton wrote: > > > The kernel maps the page cache page into user space ... BANG! possible > > D-cache alias. > > > > The kernel doesn't bother flushing the page cache page from the D-cache > > as it's never accessed at it's page cache address. > > It is - after all the driver is copying the data to there. The same > problem also exists in the ramdisk driver and there it has been fixed > properly, it seems. > I had a dig around but couldn't decide where the proper fix should go. > > The current fix in the Cobalt patches (2.4 & 2.6) just flushes the read > > data out of the D-cache after every IDE insw()/insl(). This is the least > > intrusive fix. > > > > Some Sparc machines also see this problem. > > Carelessly written PIO drivers on any architecture would suffer from this > kind of problem. > Are you saying it's a driver problem ? :-) P.