]> git.baikalelectronics.ru Git - kernel.git/commit
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)
commit83b39497b5df021d4fd836bbd241e6350ae762f6
treeaa96c0c6dd0a8230f9373cab32cd069564d27d23
parente5dab8ed47bb8c4cc8049ace5062db5d6038924f
sh: Assume new page cache pages have dirty dcache lines.

This follows the ARM change 420caa0750f5e4857096d4d48d5224af73de71bd
("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