Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 32019828 authored by Haavard Skinnemoen's avatar Haavard Skinnemoen
Browse files

avr32: Fix broken pte dump code in do_page_fault()



The per-task page tables only cover the first 2GiB of the address
space. For kernel addresses, we need to do the lookup in init's page
tables.

This is a temporary workaround until we modify the per-task page
tables to cover the whole 4GiB address space.

Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
parent e48a411f
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -189,6 +189,8 @@ no_context:

	page = sysreg_read(PTBR);
	printk(KERN_ALERT "ptbr = %08lx", page);
	if (address >= TASK_SIZE)
		page = (unsigned long)swapper_pg_dir;
	if (page) {
		page = ((unsigned long *)page)[address >> 22];
		printk(" pgd = %08lx", page);