Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / arch / mips / lib-32 / r3k_dump_tlb.c
index a878224..4f2cb74 100644 (file)
@@ -105,6 +105,7 @@ void dump_tlb_nonwired(void)
 void dump_list_process(struct task_struct *t, void *address)
 {
        pgd_t   *page_dir, *pgd;
+       pud_t   *pud;
        pmd_t   *pmd;
        pte_t   *pte, page;
        unsigned int addr;
@@ -121,7 +122,10 @@ void dump_list_process(struct task_struct *t, void *address)
        pgd = pgd_offset(t->mm, addr);
        printk("pgd == %08x, ", (unsigned int) pgd);
 
-       pmd = pmd_offset(pgd, addr);
+       pud = pud_offset(pgd, addr);
+       printk("pud == %08x, ", (unsigned int) pud);
+
+       pmd = pmd_offset(pud, addr);
        printk("pmd == %08x, ", (unsigned int) pmd);
 
        pte = pte_offset(pmd, addr);
@@ -149,13 +153,15 @@ void dump_list_current(void *address)
 unsigned int vtop(void *address)
 {
        pgd_t   *pgd;
+       pud_t   *pud;
        pmd_t   *pmd;
        pte_t   *pte;
        unsigned int addr, paddr;
 
        addr = (unsigned long) address;
        pgd = pgd_offset(current->mm, addr);
-       pmd = pmd_offset(pgd, addr);
+       pud = pud_offset(pgd, addr);
+       pmd = pmd_offset(pud, addr);
        pte = pte_offset(pmd, addr);
        paddr = (KSEG1 | (unsigned int) pte_val(*pte)) & PAGE_MASK;
        paddr |= (addr & ~PAGE_MASK);