diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2013-11-28 21:43:40 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2013-11-30 14:45:31 +0000 |
commit | d8aa712c30148ba26fd89a5dc14de95d4c375184 (patch) | |
tree | 61f15d12929d3dd19dbf0589035777cb2751a476 /arch/arm/mm/pgd.c | |
parent | 11a5aa32562e1e90ab2d0278748fe0fbecda1cbe (diff) | |
download | linux-d8aa712c30148ba26fd89a5dc14de95d4c375184.tar.gz linux-d8aa712c30148ba26fd89a5dc14de95d4c375184.tar.bz2 linux-d8aa712c30148ba26fd89a5dc14de95d4c375184.zip |
ARM: fix booting low-vectors machines
Commit f6f91b0d9fd9 (ARM: allow kuser helpers to be removed from the
vector page) required two pages for the vectors code. Although the
code setting up the initial page tables was updated, the code which
allocates page tables for new processes wasn't, neither was the code
which tears down the mappings. Fix this.
Fixes: f6f91b0d9fd9 ("ARM: allow kuser helpers to be removed from the vector page")
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: <stable@vger.kernel.org>
Diffstat (limited to 'arch/arm/mm/pgd.c')
-rw-r--r-- | arch/arm/mm/pgd.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm/mm/pgd.c b/arch/arm/mm/pgd.c index 0acb089d0f70..1046b373d1ae 100644 --- a/arch/arm/mm/pgd.c +++ b/arch/arm/mm/pgd.c @@ -87,7 +87,8 @@ pgd_t *pgd_alloc(struct mm_struct *mm) init_pud = pud_offset(init_pgd, 0); init_pmd = pmd_offset(init_pud, 0); init_pte = pte_offset_map(init_pmd, 0); - set_pte_ext(new_pte, *init_pte, 0); + set_pte_ext(new_pte + 0, init_pte[0], 0); + set_pte_ext(new_pte + 1, init_pte[1], 0); pte_unmap(init_pte); pte_unmap(new_pte); } |