summaryrefslogtreecommitdiffstats
path: root/arch/sh/mm
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2009-09-09 17:13:07 +0900
committerPaul Mundt <lethal@linux-sh.org>2009-09-09 17:13:07 +0900
commitc4845a4b2288a9e5d96a0558e474809028c8aff3 (patch)
treeebe4ecedec6d68b131fc3803363b9b3020b958f9 /arch/sh/mm
parentdeaef20e9789d93c06d2d3b5ffc99939814802ca (diff)
downloadlinux-c4845a4b2288a9e5d96a0558e474809028c8aff3.tar.gz
linux-c4845a4b2288a9e5d96a0558e474809028c8aff3.tar.bz2
linux-c4845a4b2288a9e5d96a0558e474809028c8aff3.zip
sh: Fix up redundant cache flushing for PAGE_SIZE > 4k.
If PAGE_SIZE is presently over 4k we do a lot of extra flushing given that we purge the cache 4k at a time. Make it explicitly 4k per iteration, rather than iterating for PAGE_SIZE before looping over again. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/mm')
-rw-r--r--arch/sh/mm/cache-sh4.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sh/mm/cache-sh4.c b/arch/sh/mm/cache-sh4.c
index e3fbd99b323c..8362d312ad94 100644
--- a/arch/sh/mm/cache-sh4.c
+++ b/arch/sh/mm/cache-sh4.c
@@ -357,7 +357,7 @@ static void __flush_cache_4096(unsigned long addr, unsigned long phys,
* pointless nead-of-loop check for 0 iterations.
*/
do {
- ea = base_addr + PAGE_SIZE;
+ ea = base_addr + 4096;
a = base_addr;
p = phys;