On Thu, 2009-12-10 at 22:46 +0300, Ilya Loginov wrote: > On Thu, 10 Dec 2009 11:07:31 -0600 > James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > > > What MTD device is this? The subsystem is very complex, but I suppose I > > could trace the read path in a single device to see what the actual > > problem is. > > Oh! There is a FPGA. There are kernel and diskimage(via slram) in memory. > So, kernel just copy a part of libc from fs in RAM to RAM. Right, so this is the problem. Where you do the ram to ram copy in-kernel, you need kmap/kunmap. If you copy from the FPGA RAM to the kernel RAM, before you do the kunmap, you also need a flush_kernel_dcache_page(). This (plus implementing flush_kernel_dcache_page() on mips) will fix all coherency issues. Which exact driver in drivers/mtd? I can probably just look at it and see where the kmap/flush is supposed to be. James -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html