diff options
Diffstat (limited to 'mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch')
-rw-r--r-- | mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch b/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch deleted file mode 100644 index c5d3a0c0c..000000000 --- a/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch +++ /dev/null @@ -1,51 +0,0 @@ -From patchwork Thu Mar 15 15:23:53 2018 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: mm/khugepaged: Convert VM_BUG_ON() to collapse fail -From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> -X-Patchwork-Id: 10284785 -Message-Id: <20180315152353.27989-1-kirill.shutemov@linux.intel.com> -To: Andrew Morton <akpm@linux-foundation.org> -Cc: Laura Abbott <labbott@redhat.com>, linux-mm@kvack.org, - linux-kernel@vger.kernel.org, - "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> -Date: Thu, 15 Mar 2018 18:23:53 +0300 - -khugepaged is not yet able to convert PTE-mapped huge pages back to PMD -mapped. We do not collapse such pages. See check khugepaged_scan_pmd(). - -But if between khugepaged_scan_pmd() and __collapse_huge_page_isolate() -somebody managed to instantiate THP in the range and then split the PMD -back to PTEs we would have a problem -- VM_BUG_ON_PAGE(PageCompound(page)) -will get triggered. - -It's possible since we drop mmap_sem during collapse to re-take for -write. - -Replace the VM_BUG_ON() with graceful collapse fail. - -Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> -Fixes: b1caa957ae6d ("khugepaged: ignore pmd tables with THP mapped with ptes") ---- - mm/khugepaged.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/mm/khugepaged.c b/mm/khugepaged.c -index b7e2268dfc9a..c15da1ea7e63 100644 ---- a/mm/khugepaged.c -+++ b/mm/khugepaged.c -@@ -530,7 +530,12 @@ static int __collapse_huge_page_isolate(struct vm_area_struct *vma, - goto out; - } - -- VM_BUG_ON_PAGE(PageCompound(page), page); -+ /* TODO: teach khugepaged to collapse THP mapped with pte */ -+ if (PageCompound(page)) { -+ result = SCAN_PAGE_COMPOUND; -+ goto out; -+ } -+ - VM_BUG_ON_PAGE(!PageAnon(page), page); - - /* |