forked from luck/tmp_suning_uos_patched
mm/hugetlb: reduce arch dependent code about hugetlb_prefault_arch_hook
Currently we have many duplicates in definitions of hugetlb_prefault_arch_hook. In all architectures this function is empty. Signed-off-by: Zhang Zhen <zhenzhang.zhang@huawei.com> Acked-by: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
83d3f0e90c
commit
a67a31fa30
|
@ -53,10 +53,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int huge_pte_none(pte_t pte)
|
static inline int huge_pte_none(pte_t pte)
|
||||||
{
|
{
|
||||||
return pte_none(pte);
|
return pte_none(pte);
|
||||||
|
|
|
@ -86,10 +86,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int huge_pte_none(pte_t pte)
|
static inline int huge_pte_none(pte_t pte)
|
||||||
{
|
{
|
||||||
return pte_none(pte);
|
return pte_none(pte);
|
||||||
|
|
|
@ -20,10 +20,6 @@ static inline int is_hugepage_only_range(struct mm_struct *mm,
|
||||||
REGION_NUMBER((addr)+(len)-1) == RGN_HPAGE);
|
REGION_NUMBER((addr)+(len)-1) == RGN_HPAGE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
|
static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
|
||||||
pte_t *ptep, pte_t pte)
|
pte_t *ptep, pte_t pte)
|
||||||
{
|
{
|
||||||
|
|
|
@ -14,10 +14,6 @@ static inline int is_hugepage_only_range(struct mm_struct *mm,
|
||||||
int prepare_hugepage_range(struct file *file, unsigned long addr,
|
int prepare_hugepage_range(struct file *file, unsigned long addr,
|
||||||
unsigned long len);
|
unsigned long len);
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
||||||
unsigned long addr, unsigned long end,
|
unsigned long addr, unsigned long end,
|
||||||
unsigned long floor,
|
unsigned long floor,
|
||||||
|
|
|
@ -38,10 +38,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
||||||
unsigned long addr,
|
unsigned long addr,
|
||||||
unsigned long end,
|
unsigned long end,
|
||||||
|
|
|
@ -112,11 +112,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
|
static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
|
||||||
pte_t *ptep, pte_t pte)
|
pte_t *ptep, pte_t pte)
|
||||||
{
|
{
|
||||||
|
|
|
@ -35,7 +35,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define hugetlb_prefault_arch_hook(mm) do { } while (0)
|
|
||||||
#define arch_clear_hugepage_flags(page) do { } while (0)
|
#define arch_clear_hugepage_flags(page) do { } while (0)
|
||||||
|
|
||||||
int arch_prepare_hugepage(struct page *page);
|
int arch_prepare_hugepage(struct page *page);
|
||||||
|
|
|
@ -26,9 +26,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm) {
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
||||||
unsigned long addr, unsigned long end,
|
unsigned long addr, unsigned long end,
|
||||||
unsigned long floor,
|
unsigned long floor,
|
||||||
|
|
|
@ -11,10 +11,6 @@ void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
|
||||||
pte_t huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr,
|
pte_t huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr,
|
||||||
pte_t *ptep);
|
pte_t *ptep);
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int is_hugepage_only_range(struct mm_struct *mm,
|
static inline int is_hugepage_only_range(struct mm_struct *mm,
|
||||||
unsigned long addr,
|
unsigned long addr,
|
||||||
unsigned long len) {
|
unsigned long len) {
|
||||||
|
|
|
@ -40,10 +40,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
||||||
unsigned long addr, unsigned long end,
|
unsigned long addr, unsigned long end,
|
||||||
unsigned long floor,
|
unsigned long floor,
|
||||||
|
|
|
@ -26,9 +26,6 @@ static inline int prepare_hugepage_range(struct file *file,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void hugetlb_prefault_arch_hook(struct mm_struct *mm) {
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb,
|
||||||
unsigned long addr, unsigned long end,
|
unsigned long addr, unsigned long end,
|
||||||
unsigned long floor,
|
unsigned long floor,
|
||||||
|
|
|
@ -130,7 +130,6 @@ static int hugetlbfs_file_mmap(struct file *file, struct vm_area_struct *vma)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
hugetlb_prefault_arch_hook(vma->vm_mm);
|
|
||||||
if (vma->vm_flags & VM_WRITE && inode->i_size < len)
|
if (vma->vm_flags & VM_WRITE && inode->i_size < len)
|
||||||
inode->i_size = len;
|
inode->i_size = len;
|
||||||
out:
|
out:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user