[BUG] asm-ppc/pgtable.h breakage from 2.6.7-rc1-bk4

From: Mikael Pettersson
Date: Sat Jun 05 2004 - 14:57:51 EST


The current 2.6.7-rc2 kernel hangs after starting INIT
on my PowerMac 4400. I traced the problem to the
ptep_set_access_flags() patch in 2.6.7-rc1-bk4, which
replaces ptep_establish()'s set_pte();flush_tlb_page()
sequence with a single pte_update() in two places in
mm/memory.c.

The patch below disables this change on ppc32, and
allows my 603ev-based PM4400 to finally boot 2.6.7-rc2.

/Mikael

diff -ruN linux-2.6.7-rc2/include/asm-ppc/pgtable.h linux-2.6.7-rc2.ppc-pgtable-fix/include/asm-ppc/pgtable.h
--- linux-2.6.7-rc2/include/asm-ppc/pgtable.h 2004-06-05 19:56:55.000000000 +0200
+++ linux-2.6.7-rc2.ppc-pgtable-fix/include/asm-ppc/pgtable.h 2004-06-05 19:58:43.000000000 +0200
@@ -548,6 +548,7 @@
pte_update(ptep, 0, _PAGE_DIRTY);
}

+#if 0
#define __HAVE_ARCH_PTEP_SET_ACCESS_FLAGS
static inline void __ptep_set_access_flags(pte_t *ptep, pte_t entry, int dirty)
{
@@ -557,6 +558,7 @@
}
#define ptep_set_access_flags(__vma, __address, __ptep, __entry, __dirty) \
__ptep_set_access_flags(__ptep, __entry, __dirty)
+#endif

/*
* Macro to mark a page protection value as "uncacheable".
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/