[PATCH] stop c_p_a corrupting the pds

From: Hugh Dickins
Date: Tue Feb 05 2008 - 17:27:43 EST


When change_page_attr splits a large page on x86_32 (without PAE), it is
currently corrupting every process's page directory: fix that by removing
the thinko which passes down a physical instead of a virtual address.

Signed-off-by: Hugh Dickins <hugh@xxxxxxxxxxx>

--- 2.6.24-git/arch/x86/mm/pageattr.c 2008-02-05 16:43:45.000000000 +0000
+++ linux/arch/x86/mm/pageattr.c 2008-02-05 21:34:18.000000000 +0000
@@ -237,7 +237,6 @@ static void __set_pmd_pte(pte_t *kpte, u
if (!SHARED_KERNEL_PMD) {
struct page *page;

- address = __pa(address);
list_for_each_entry(page, &pgd_list, lru) {
pgd_t *pgd;
pud_t *pud;
--
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/