]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: 6379/1: Assume new page cache pages have dirty D-cache
authorCatalin Marinas <catalin.marinas@arm.com>
Mon, 13 Sep 2010 14:57:36 +0000 (15:57 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 19 Sep 2010 11:17:43 +0000 (12:17 +0100)
commit420caa0750f5e4857096d4d48d5224af73de71bd
treea425979b236dd5c7757e9a1f0c66d3819ad99021
parentfdae190748a637477d95f0c4aa89a62bd004aac8
ARM: 6379/1: Assume new page cache pages have dirty D-cache

There are places in Linux where writes to newly allocated page cache
pages happen without a subsequent call to flush_dcache_page() (several
PIO drivers including USB HCD). This patch changes the meaning of
PG_arch_1 to be PG_dcache_clean and always flush the D-cache for a newly
mapped page in update_mmu_cache().

The patch also sets the PG_arch_1 bit in the DMA cache maintenance
function to avoid additional cache flushing in update_mmu_cache().

Tested-by: Rabin Vincent <rabin.vincent@stericsson.com>
Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/cacheflush.h
arch/arm/include/asm/tlbflush.h
arch/arm/mm/copypage-v4mc.c
arch/arm/mm/copypage-v6.c
arch/arm/mm/copypage-xscale.c
arch/arm/mm/dma-mapping.c
arch/arm/mm/fault-armv.c
arch/arm/mm/flush.c