mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-21 14:11:20 +00:00
thp: change pmd_trans_huge_lock() interface to return ptl
After THP refcounting rework we have only two possible return values from pmd_trans_huge_lock(): success and failure. Return-by-pointer for ptl doesn't make much sense in this case. Let's convert pmd_trans_huge_lock() to return ptl on success and NULL on failure. Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Minchan Kim <minchan@kernel.org> Acked-by: Michal Hocko <mhocko@suse.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
404a47410c
commit
b6ec57f4b9
5 changed files with 36 additions and 25 deletions
|
@ -120,15 +120,15 @@ extern void vma_adjust_trans_huge(struct vm_area_struct *vma,
|
|||
unsigned long start,
|
||||
unsigned long end,
|
||||
long adjust_next);
|
||||
extern bool __pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma,
|
||||
spinlock_t **ptl);
|
||||
extern spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd,
|
||||
struct vm_area_struct *vma);
|
||||
/* mmap_sem must be held on entry */
|
||||
static inline bool pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma,
|
||||
spinlock_t **ptl)
|
||||
static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd,
|
||||
struct vm_area_struct *vma)
|
||||
{
|
||||
VM_BUG_ON_VMA(!rwsem_is_locked(&vma->vm_mm->mmap_sem), vma);
|
||||
if (pmd_trans_huge(*pmd) || pmd_devmap(*pmd))
|
||||
return __pmd_trans_huge_lock(pmd, vma, ptl);
|
||||
return __pmd_trans_huge_lock(pmd, vma);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
@ -190,10 +190,10 @@ static inline void vma_adjust_trans_huge(struct vm_area_struct *vma,
|
|||
long adjust_next)
|
||||
{
|
||||
}
|
||||
static inline bool pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma,
|
||||
spinlock_t **ptl)
|
||||
static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd,
|
||||
struct vm_area_struct *vma)
|
||||
{
|
||||
return false;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline int do_huge_pmd_numa_page(struct mm_struct *mm, struct vm_area_struct *vma,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue