ARM: LPAE: Page table maintenance for the 3-level format
authorCatalin Marinas <catalin.marinas@arm.com>
Tue, 22 Nov 2011 17:30:29 +0000 (17:30 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 8 Dec 2011 10:30:39 +0000 (10:30 +0000)
commitda02877987e6e173ebba137d4e1e155e1f1151cd
tree8035bb1fb7def068ed2fd13d5d11ec5857c7d338
parentdcfdae04bd92e8a2ea155db0e21e3bddc09e0a89
ARM: LPAE: Page table maintenance for the 3-level format

This patch modifies the pgd/pmd/pte manipulation functions to support
the 3-level page table format. Since there is no need for an 'ext'
argument to cpu_set_pte_ext(), this patch conditionally defines a
different prototype for this function when CONFIG_ARM_LPAE.

The patch also introduces the L_PGD_SWAPPER flag to mark pgd entries
pointing to pmd tables pre-allocated in the swapper_pg_dir and avoid
trying to free them at run-time. This flag is 0 with the classic page
table format.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm/include/asm/pgalloc.h
arch/arm/include/asm/pgtable-3level.h
arch/arm/include/asm/proc-fns.h
arch/arm/mm/ioremap.c
arch/arm/mm/pgd.c