Warning: This file is not a C or C++ file. It does not have highlighting.
1 | /* SPDX-License-Identifier: GPL-2.0 */ |
---|---|
2 | #ifndef _ASM_SH_HUGETLB_H |
3 | #define _ASM_SH_HUGETLB_H |
4 | |
5 | #include <asm/cacheflush.h> |
6 | #include <asm/page.h> |
7 | |
8 | /* |
9 | * If the arch doesn't supply something else, assume that hugepage |
10 | * size aligned regions are ok without further preparation. |
11 | */ |
12 | #define __HAVE_ARCH_PREPARE_HUGEPAGE_RANGE |
13 | static inline int prepare_hugepage_range(struct file *file, |
14 | unsigned long addr, unsigned long len) |
15 | { |
16 | if (len & ~HPAGE_MASK) |
17 | return -EINVAL; |
18 | if (addr & ~HPAGE_MASK) |
19 | return -EINVAL; |
20 | return 0; |
21 | } |
22 | |
23 | #define __HAVE_ARCH_HUGE_PTEP_CLEAR_FLUSH |
24 | static inline pte_t huge_ptep_clear_flush(struct vm_area_struct *vma, |
25 | unsigned long addr, pte_t *ptep) |
26 | { |
27 | return *ptep; |
28 | } |
29 | |
30 | static inline void arch_clear_hugepage_flags(struct page *page) |
31 | { |
32 | clear_bit(PG_dcache_clean, &page->flags); |
33 | } |
34 | #define arch_clear_hugepage_flags arch_clear_hugepage_flags |
35 | |
36 | #include <asm-generic/hugetlb.h> |
37 | |
38 | #endif /* _ASM_SH_HUGETLB_H */ |
39 |
Warning: This file is not a C or C++ file. It does not have highlighting.