On Tue, May 01, 2007 at 01:46:56PM -0400, Mark Lord wrote: > > Bahadir Balban wrote: > >On an ARM core with write-allocate writeback cache, there can be cache > >inconsistencies when an executable file is read from a block device > >into memory. > > > >On a compact flash block device driver, I got around this problem by > >flushing the caches for the pages that bio buffers use on every bio > >read. E.g. > > > >cflash_read_sectors(dev, sect_begin, nsect, buf); > >flush_icache_range(buf, buf + nsect*512); > > > >Now I have the same problem with a ATA harddisk connected with a > >PDC20269 controller. The question is where would be the best > >high-level place to put these flushes so that it works regardless of > >what block IO driver is used? > > Russell, didn't you go through all of this pain and fix it > a year or two ago? I thought so. > Bahadir, exactly what kernel/version is this with? Bahadir must be using an old kernel. -- Russell King Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/ maintainer of: - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html