[PATCH] ppc64: Fix the lazy icache/dcache code for non-RAM pages
Benjamin Herrenschmidt
benh at kernel.crashing.org
Tue Nov 8 11:21:05 EST 2005
For some stupid reason I can't explain (brown paper bag is at hand), I
removed the check pfn_valid() in the code that does the icache/dcache
coherency on POWER4 and later. That causes us to eventually try to
access non existing struct page when hashing in IO pages.
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Index: linux-work/arch/powerpc/mm/hash_utils_64.c
===================================================================
--- linux-work.orig/arch/powerpc/mm/hash_utils_64.c 2005-11-08 11:00:17.000000000 +1100
+++ linux-work/arch/powerpc/mm/hash_utils_64.c 2005-11-08 11:06:39.000000000 +1100
@@ -514,6 +514,9 @@
{
struct page *page;
+ if (!pfn_valid(pte_pfn(pte)))
+ return pp;
+
page = pte_page(pte);
/* page is dirty */
More information about the Linuxppc64-dev
mailing list