Messages in this thread Patch in this message | | | From | "Kirill A. Shutemov" <> | Subject | [PATCHv9-rebased2 21/37] vmscan: split file huge pages before paging them out | Date | Wed, 15 Jun 2016 23:06:26 +0300 |
| |
This is preparation of vmscan for file huge pages. We cannot write out huge pages, so we need to split them on the way out.
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> --- mm/vmscan.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/mm/vmscan.c b/mm/vmscan.c index 93ba33789ac6..21d417ccff69 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -1055,8 +1055,14 @@ static unsigned long shrink_page_list(struct list_head *page_list, /* Adding to swap updated mapping */ mapping = page_mapping(page); + } else if (unlikely(PageTransHuge(page))) { + /* Split file THP */ + if (split_huge_page_to_list(page, page_list)) + goto keep_locked; } + VM_BUG_ON_PAGE(PageTransHuge(page), page); + /* * The page is mapped into the page tables of one or more * processes. Try to unmap it here. -- 2.8.1
| |