1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _ASM_IA64_HUGETLB_H 3 #define _ASM_IA64_HUGETLB_H 4 5 #include <asm/page.h> 6 7 #define __HAVE_ARCH_HUGETLB_FREE_PGD_RANGE 8 void hugetlb_free_pgd_range(struct mmu_gather *tlb, unsigned long addr, 9 unsigned long end, unsigned long floor, 10 unsigned long ceiling); 11 12 #define __HAVE_ARCH_PREPARE_HUGEPAGE_RANGE 13 int prepare_hugepage_range(struct file *file, 14 unsigned long addr, unsigned long len); 15 16 static inline int is_hugepage_only_range(struct mm_struct *mm, 17 unsigned long addr, 18 unsigned long len) 19 { 20 return (REGION_NUMBER(addr) == RGN_HPAGE || 21 REGION_NUMBER((addr)+(len)-1) == RGN_HPAGE); 22 } 23 #define is_hugepage_only_range is_hugepage_only_range 24 25 #define __HAVE_ARCH_HUGE_PTEP_CLEAR_FLUSH 26 static inline pte_t huge_ptep_clear_flush(struct vm_area_struct *vma, 27 unsigned long addr, pte_t *ptep) 28 { 29 return *ptep; 30 } 31 32 #include <asm-generic/hugetlb.h> 33 34 #endif /* _ASM_IA64_HUGETLB_H */ 35