summaryrefslogtreecommitdiff
path: root/arch/sh/mm/cache.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-12-24 23:54:02 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2009-12-24 23:54:02 +0300
commitef2c55e5c60aaa89a5c1c86605ea4c1771880b66 (patch)
treef270b1b90a570319a51bb2e0a1e25da71fd309ad /arch/sh/mm/cache.c
parent431047166883101a93e9c713d54bd62466dd6ab9 (diff)
parentf34548cb735b7a80bbbb0bdd09ad4c2173ba92d5 (diff)
downloadlinux-ef2c55e5c60aaa89a5c1c86605ea4c1771880b66.tar.xz
Merge branch 'sh/for-2.6.33' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* 'sh/for-2.6.33' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: sh: Ensure all PG_dcache_dirty pages are written back. sh: mach-ecovec24: setup.c detailed correction serial: sh-sci: Convert tremaining ctrl_xxx I/O routines to __raw_xxx. serial: sh-sci: earlyprintk zero uartclk fix sh: Only use bl bit toggling for sleeping idle. sh: Restore bl bit toggling in idle loop. sh: Fix up MAX_DMA_CHANNELS definition when DMA is disabled. sh: dmaengine support for SH7785 sh: dmaengine support for sh7724.
Diffstat (limited to 'arch/sh/mm/cache.c')
-rw-r--r--arch/sh/mm/cache.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/sh/mm/cache.c b/arch/sh/mm/cache.c
index e9415d3ea94a..b8607fa7ae12 100644
--- a/arch/sh/mm/cache.c
+++ b/arch/sh/mm/cache.c
@@ -133,12 +133,8 @@ void __update_cache(struct vm_area_struct *vma,
page = pfn_to_page(pfn);
if (pfn_valid(pfn)) {
int dirty = test_and_clear_bit(PG_dcache_dirty, &page->flags);
- if (dirty) {
- unsigned long addr = (unsigned long)page_address(page);
-
- if (pages_do_alias(addr, address & PAGE_MASK))
- __flush_purge_region((void *)addr, PAGE_SIZE);
- }
+ if (dirty)
+ __flush_purge_region(page_address(page), PAGE_SIZE);
}
}