aboutsummaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorMian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>2010-05-06 09:10:53 +0200
committerMian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>2010-10-23 13:29:17 +0200
commit712f99d8fcd92a2b4a0949be7490d0092d1862ac (patch)
treed8506d8b9d544eed36a1627d5c09eea0fef13a49 /fs
parentdf6597ceea554466b7041bbe6a77d4a204e740c9 (diff)
fix cache coherence issues with bounce buffers
[Rabin VINCENT] This is for I$-D$ coherence issues when bounce buffers are used for the MMC driver and code is executed from a file system on eMMC. IMO a better fix is to either change flush_kernel_dcache_page() to flush the D$ even on VIPT non-aliasing caches or to replace the flush_kernel_dcache_page() in lib/scatterlist.c with flush_dcache_page(). Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/mpage.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/mpage.c b/fs/mpage.c
index fd56ca2ea55..ea5b3e685d5 100644
--- a/fs/mpage.c
+++ b/fs/mpage.c
@@ -52,6 +52,8 @@ static void mpage_end_io_read(struct bio *bio, int err)
prefetchw(&bvec->bv_page->flags);
if (uptodate) {
+ /* FIXME: fix to solve cache coherence issues. */
+ flush_dcache_page(page);
SetPageUptodate(page);
} else {
ClearPageUptodate(page);