sh: Assume new page cache pages have dirty dcache lines.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 1 Dec 2010 06:39:51 +0000 (15:39 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 1 Dec 2010 06:39:51 +0000 (15:39 +0900)
commit55661fc1f105ed75852e937bf8ea408270eb0cca
treeaa96c0c6dd0a8230f9373cab32cd069564d27d23
parent22a5b566c8c442b0b35b3b106795e2f2b3578096
sh: Assume new page cache pages have dirty dcache lines.

This follows the ARM change c01778001a4f5ad9c62d882776235f3f31922fdd
("ARM: 6379/1: Assume new page cache pages have dirty D-cache") for the
same rationale:

    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().

This addresses issues seen with executing binaries from MMC, in
addition to some of the other HCDs that don't explicitly do cache
management for their pipe-in buffers.

Requested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/include/asm/cacheflush.h
arch/sh/mm/cache-sh4.c
arch/sh/mm/cache-sh7705.c
arch/sh/mm/cache.c
arch/sh/mm/kmap.c