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? Bahadir, exactly what kernel/version is this with? - 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