git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
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-64
/
dump_tlb.c
diff --git
a/arch/mips/lib-64/dump_tlb.c
b/arch/mips/lib-64/dump_tlb.c
index
eb0b6cf
..
11a5f01
100644
(file)
--- a/
arch/mips/lib-64/dump_tlb.c
+++ b/
arch/mips/lib-64/dump_tlb.c
@@
-32,6
+32,8
@@
static inline const char *msk2str(unsigned int mask)
case PM_256M: return "256Mb";
#endif
}
case PM_256M: return "256Mb";
#endif
}
+
+ return "unknown";
}
#define BARRIER() \
}
#define BARRIER() \
@@
-138,6
+140,7
@@
void dump_tlb_nonwired(void)
void dump_list_process(struct task_struct *t, void *address)
{
pgd_t *page_dir, *pgd;
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 long addr, val;
pmd_t *pmd;
pte_t *pte, page;
unsigned long addr, val;
@@
-148,16
+151,19
@@
void dump_list_process(struct task_struct *t, void *address)
printk("tasks->mm.pgd == %08lx\n", (unsigned long) t->mm->pgd);
page_dir = pgd_offset(t->mm, 0);
printk("tasks->mm.pgd == %08lx\n", (unsigned long) t->mm->pgd);
page_dir = pgd_offset(t->mm, 0);
- printk("page_dir == %0
8
lx\n", (unsigned long) page_dir);
+ printk("page_dir == %0
16
lx\n", (unsigned long) page_dir);
pgd = pgd_offset(t->mm, addr);
pgd = pgd_offset(t->mm, addr);
- printk("pgd == %08lx, ", (unsigned long) pgd);
+ printk("pgd == %016lx\n", (unsigned long) pgd);
+
+ pud = pud_offset(pgd, addr);
+ printk("pud == %016lx\n", (unsigned long) pud);
- pmd = pmd_offset(p
g
d, addr);
- printk("pmd == %0
8lx,
", (unsigned long) pmd);
+ pmd = pmd_offset(p
u
d, addr);
+ printk("pmd == %0
16lx\n
", (unsigned long) pmd);
pte = pte_offset(pmd, addr);
pte = pte_offset(pmd, addr);
- printk("pte == %0
8lx,
", (unsigned long) pte);
+ printk("pte == %0
16lx\n
", (unsigned long) pte);
page = *pte;
printk("page == %08lx\n", pte_val(page));
page = *pte;
printk("page == %08lx\n", pte_val(page));
@@
-182,15
+188,17
@@
void dump_list_current(void *address)
unsigned int vtop(void *address)
{
pgd_t *pgd;
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_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);
pte = pte_offset(pmd, addr);
- paddr = (KSEG1 | (unsigned int) pte_val(*pte)) & PAGE_MASK;
+ paddr = (
C
KSEG1 | (unsigned int) pte_val(*pte)) & PAGE_MASK;
paddr |= (addr & ~PAGE_MASK);
return paddr;
paddr |= (addr & ~PAGE_MASK);
return paddr;