[RFC PATCH] ARM: Allow lazy cache flushing via PG_arch_1 for highmem pages

Catalin Marinas catalin.marinas at arm.com
Tue Jul 20 08:41:02 EDT 2010


Current flush_dcache_page() implementation does not allow lazy cache
flushing for highmem pages (introduced by commit d73cd42) on the
assumption that the temporary kmap mapping would disappear. A subsequent
commit (7e5a69e) allows __flush_dcache_page() to handle highmem pages so
we can allow lazy cache flushing even for highmem pages.

Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>
Cc: Nicolas Pitre <nico at fluxnic.net>
---
 arch/arm/mm/flush.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mm/flush.c b/arch/arm/mm/flush.c
index c6844cb..87dd5ff 100644
--- a/arch/arm/mm/flush.c
+++ b/arch/arm/mm/flush.c
@@ -247,7 +247,7 @@ void flush_dcache_page(struct page *page)
 	mapping = page_mapping(page);
 
 #ifndef CONFIG_SMP
-	if (!PageHighMem(page) && mapping && !mapping_mapped(mapping))
+	if (mapping && !mapping_mapped(mapping))
 		set_bit(PG_dcache_dirty, &page->flags);
 	else
 #endif




More information about the linux-arm-kernel mailing list