Commit | Line | Data |
---|---|---|
6d779079 GS |
1 | #ifndef _ASM_POWERPC_HUGETLB_H |
2 | #define _ASM_POWERPC_HUGETLB_H | |
3 | ||
4 | #include <asm/page.h> | |
5 | ||
6 | ||
7 | int is_hugepage_only_range(struct mm_struct *mm, unsigned long addr, | |
8 | unsigned long len); | |
9 | ||
10 | void hugetlb_free_pgd_range(struct mmu_gather **tlb, unsigned long addr, | |
11 | unsigned long end, unsigned long floor, | |
12 | unsigned long ceiling); | |
13 | ||
14 | void set_huge_pte_at(struct mm_struct *mm, unsigned long addr, | |
15 | pte_t *ptep, pte_t pte); | |
16 | ||
17 | pte_t huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr, | |
18 | pte_t *ptep); | |
19 | ||
20 | /* | |
21 | * If the arch doesn't supply something else, assume that hugepage | |
22 | * size aligned regions are ok without further preparation. | |
23 | */ | |
24 | static inline int prepare_hugepage_range(unsigned long addr, unsigned long len) | |
25 | { | |
26 | if (len & ~HPAGE_MASK) | |
27 | return -EINVAL; | |
28 | if (addr & ~HPAGE_MASK) | |
29 | return -EINVAL; | |
30 | return 0; | |
31 | } | |
32 | ||
33 | static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm) | |
34 | { | |
35 | } | |
36 | ||
37 | #endif /* _ASM_POWERPC_HUGETLB_H */ |