summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/tlb.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-17 03:51:27 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-17 03:51:27 +0400
commit8f949b9a7e0bac3a9c3c29dc27c476a87e21db3e (patch)
tree88cd7852d59ebae54fcc2f57019ea13284042962 /arch/arm/include/asm/tlb.h
parent6f586e663e3b3674cadad0d5329424b006a0a289 (diff)
parent5698bd757d55b1bb87edd1a9744ab09c142abfc2 (diff)
downloadlinux-8f949b9a7e0bac3a9c3c29dc27c476a87e21db3e.tar.xz
Merge 3.6-rc7 into driver-core-next
This pulls in the fixes in that branch that are needed here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arm/include/asm/tlb.h')
-rw-r--r--arch/arm/include/asm/tlb.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/include/asm/tlb.h b/arch/arm/include/asm/tlb.h
index 314d4664eae7..99a19512ee26 100644
--- a/arch/arm/include/asm/tlb.h
+++ b/arch/arm/include/asm/tlb.h
@@ -199,6 +199,9 @@ static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte,
{
pgtable_page_dtor(pte);
+#ifdef CONFIG_ARM_LPAE
+ tlb_add_flush(tlb, addr);
+#else
/*
* With the classic ARM MMU, a pte page has two corresponding pmd
* entries, each covering 1MB.
@@ -206,6 +209,7 @@ static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte,
addr &= PMD_MASK;
tlb_add_flush(tlb, addr + SZ_1M - PAGE_SIZE);
tlb_add_flush(tlb, addr + SZ_1M);
+#endif
tlb_remove_page(tlb, pte);
}