Commit 3079e9c8 authored by Trond Myklebust's avatar Trond Myklebust

RPC: Add missing calls to flush_dcache_page() in net/sunrpc/xdr.c

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent a1df761e
...@@ -371,6 +371,7 @@ _shift_data_right_pages(struct page **pages, size_t pgto_base, ...@@ -371,6 +371,7 @@ _shift_data_right_pages(struct page **pages, size_t pgto_base,
do { do {
/* Are any pointers crossing a page boundary? */ /* Are any pointers crossing a page boundary? */
if (pgto_base == 0) { if (pgto_base == 0) {
flush_dcache_page(*pgto);
pgto_base = PAGE_CACHE_SIZE; pgto_base = PAGE_CACHE_SIZE;
pgto--; pgto--;
} }
...@@ -394,6 +395,7 @@ _shift_data_right_pages(struct page **pages, size_t pgto_base, ...@@ -394,6 +395,7 @@ _shift_data_right_pages(struct page **pages, size_t pgto_base,
kunmap_atomic(vto, KM_USER0); kunmap_atomic(vto, KM_USER0);
} while ((len -= copy) != 0); } while ((len -= copy) != 0);
flush_dcache_page(*pgto);
} }
/* /*
...@@ -427,12 +429,14 @@ _copy_to_pages(struct page **pages, size_t pgbase, const char *p, size_t len) ...@@ -427,12 +429,14 @@ _copy_to_pages(struct page **pages, size_t pgbase, const char *p, size_t len)
pgbase += copy; pgbase += copy;
if (pgbase == PAGE_CACHE_SIZE) { if (pgbase == PAGE_CACHE_SIZE) {
flush_dcache_page(*pgto);
pgbase = 0; pgbase = 0;
pgto++; pgto++;
} }
p += copy; p += copy;
} while ((len -= copy) != 0); } while ((len -= copy) != 0);
flush_dcache_page(*pgto);
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment