Messages in this thread |  | | Subject | Re: [PATCHv2 2/8] khugepaged: Do not stop collapse if less than half PTEs are referenced | From | Yang Shi <> | Date | Mon, 6 Apr 2020 11:13:35 -0700 |
| |
On 4/3/20 4:29 AM, Kirill A. Shutemov wrote: > __collapse_huge_page_swapin() check number of referenced PTE to decide > if the memory range is hot enough to justify swapin. > > The problem is that it stops collapse altogether if there's not enough > referenced pages, not only swappingin. > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> > Fixes: 0db501f7a34c ("mm, thp: convert from optimistic swapin collapsing to conservative") > Reviewed-by: Zi Yan <ziy@nvidia.com> > --- > mm/khugepaged.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-)
Acked-by: Yang Shi <yang.shi@linux.alibaba.com>
> > diff --git a/mm/khugepaged.c b/mm/khugepaged.c > index 99bab7e4d05b..14d7afc90786 100644 > --- a/mm/khugepaged.c > +++ b/mm/khugepaged.c > @@ -905,7 +905,8 @@ static bool __collapse_huge_page_swapin(struct mm_struct *mm, > /* we only decide to swapin, if there is enough young ptes */ > if (referenced < HPAGE_PMD_NR/2) { > trace_mm_collapse_huge_page_swapin(mm, swapped_in, referenced, 0); > - return false; > + /* Do not block collapse, only skip swapping in */ > + return true; > } > vmf.pte = pte_offset_map(pmd, address); > for (; vmf.address < address + HPAGE_PMD_NR*PAGE_SIZE;
|  |