summaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/hugetlbpage.c
diff options
context:
space:
mode:
authorSteven Capper <steve.capper@linaro.org>2013-07-26 14:58:22 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2013-07-31 11:13:22 +0100
commit4bfab2034bab9374eba1921cf7bd51fd8d48661b (patch)
tree1646fd0daf6df9bacb78a129c294df7a45bb49f1 /arch/arm/mm/hugetlbpage.c
parentc9218b163959fafa76ffbee0baa3ef269838f410 (diff)
downloadlinux-4bfab2034bab9374eba1921cf7bd51fd8d48661b.tar.gz
linux-4bfab2034bab9374eba1921cf7bd51fd8d48661b.tar.bz2
linux-4bfab2034bab9374eba1921cf7bd51fd8d48661b.zip
ARM: 7792/1: mm: Remove general hugetlb code from ARM
General forms of huge_pte_alloc, huge_pte_offset and follow_huge_pmd are now available in mm/hugetlb.c. This patch removes the ARM copies of these functions and activates the general ones by enabling: CONFIG_ARCH_WANT_GENERAL_HUGETLB Signed-off-by: Steve Capper <steve.capper@linaro.org> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm/hugetlbpage.c')
-rw-r--r--arch/arm/mm/hugetlbpage.c43
1 files changed, 0 insertions, 43 deletions
diff --git a/arch/arm/mm/hugetlbpage.c b/arch/arm/mm/hugetlbpage.c
index 3d1e4a205b0b..66781bf34077 100644
--- a/arch/arm/mm/hugetlbpage.c
+++ b/arch/arm/mm/hugetlbpage.c
@@ -36,22 +36,6 @@
* of type casting from pmd_t * to pte_t *.
*/
-pte_t *huge_pte_offset(struct mm_struct *mm, unsigned long addr)
-{
- pgd_t *pgd;
- pud_t *pud;
- pmd_t *pmd = NULL;
-
- pgd = pgd_offset(mm, addr);
- if (pgd_present(*pgd)) {
- pud = pud_offset(pgd, addr);
- if (pud_present(*pud))
- pmd = pmd_offset(pud, addr);
- }
-
- return (pte_t *)pmd;
-}
-
struct page *follow_huge_addr(struct mm_struct *mm, unsigned long address,
int write)
{
@@ -68,33 +52,6 @@ int huge_pmd_unshare(struct mm_struct *mm, unsigned long *addr, pte_t *ptep)
return 0;
}
-pte_t *huge_pte_alloc(struct mm_struct *mm,
- unsigned long addr, unsigned long sz)
-{
- pgd_t *pgd;
- pud_t *pud;
- pte_t *pte = NULL;
-
- pgd = pgd_offset(mm, addr);
- pud = pud_alloc(mm, pgd, addr);
- if (pud)
- pte = (pte_t *)pmd_alloc(mm, pud, addr);
-
- return pte;
-}
-
-struct page *
-follow_huge_pmd(struct mm_struct *mm, unsigned long address,
- pmd_t *pmd, int write)
-{
- struct page *page;
-
- page = pte_page(*(pte_t *)pmd);
- if (page)
- page += ((address & ~PMD_MASK) >> PAGE_SHIFT);
- return page;
-}
-
int pmd_huge(pmd_t pmd)
{
return pmd_val(pmd) && !(pmd_val(pmd) & PMD_TABLE_BIT);