CVSROOT: /home/cvs
Module name: linux
Changes by: ralf@ftp.linux-mips.org 05/06/27 09:39:23
Modified files:
arch/mips/mm : c-r3k.c c-tx39.c
Log message:
4-level page tables for R3000-family.
diff -urN linux/arch/mips/mm/c-r3k.c linux/arch/mips/mm/c-r3k.c
--- linux/arch/mips/mm/c-r3k.c 2005/03/18 17:36:53 1.23
+++ linux/arch/mips/mm/c-r3k.c 2005/06/27 08:39:23 1.24
@@ -221,12 +221,14 @@
struct mm_struct *mm)
{
pgd_t *pgd;
+ pud_t *pud;
pmd_t *pmd;
pte_t *pte;
unsigned long physpage;
pgd = pgd_offset(mm, addr);
- pmd = pmd_offset(pgd, addr);
+ pud = pud_offset(pgd, addr);
+ pmd = pmd_offset(pud, addr);
pte = pte_offset(pmd, addr);
if ((physpage = pte_val(*pte)) & _PAGE_VALID)
diff -urN linux/arch/mips/mm/c-tx39.c linux/arch/mips/mm/c-tx39.c
--- linux/arch/mips/mm/c-tx39.c 2005/03/18 17:36:53 1.29
+++ linux/arch/mips/mm/c-tx39.c 2005/06/27 08:39:23 1.30
@@ -183,6 +183,7 @@
int exec = vma->vm_flags & VM_EXEC;
struct mm_struct *mm = vma->vm_mm;
pgd_t *pgdp;
+ pud_t *pudp;
pmd_t *pmdp;
pte_t *ptep;
@@ -195,7 +196,8 @@
page &= PAGE_MASK;
pgdp = pgd_offset(mm, page);
- pmdp = pmd_offset(pgdp, page);
+ pudp = pud_offset(pgdp, page);
+ pmdp = pmd_offset(pudp, page);
ptep = pte_offset(pmdp, page);
/*
|