mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
thp: change split_huge_page_pmd() interface
Pass vma instead of mm and add address parameter. In most cases we already have vma on the stack. We provides split_huge_page_pmd_mm() for few cases when we have mm, but not vma. This change is preparation to huge zero pmd splitting implementation. Signed-off-by: Kirill A. Shutemov <[email protected]> Cc: Andrea Arcangeli <[email protected]> Cc: Andi Kleen <[email protected]> Cc: "H. Peter Anvin" <[email protected]> Cc: Mel Gorman <[email protected]> Cc: David Rientjes <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
cad7f613c4
commit
e180377f1a
10 changed files with 37 additions and 16 deletions
|
|
@ -276,7 +276,7 @@ unaffected. libhugetlbfs will also work fine as usual.
|
|||
== Graceful fallback ==
|
||||
|
||||
Code walking pagetables but unware about huge pmds can simply call
|
||||
split_huge_page_pmd(mm, pmd) where the pmd is the one returned by
|
||||
split_huge_page_pmd(vma, addr, pmd) where the pmd is the one returned by
|
||||
pmd_offset. It's trivial to make the code transparent hugepage aware
|
||||
by just grepping for "pmd_offset" and adding split_huge_page_pmd where
|
||||
missing after pmd_offset returns the pmd. Thanks to the graceful
|
||||
|
|
@ -299,7 +299,7 @@ diff --git a/mm/mremap.c b/mm/mremap.c
|
|||
return NULL;
|
||||
|
||||
pmd = pmd_offset(pud, addr);
|
||||
+ split_huge_page_pmd(mm, pmd);
|
||||
+ split_huge_page_pmd(vma, addr, pmd);
|
||||
if (pmd_none_or_clear_bad(pmd))
|
||||
return NULL;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue