Re: [PATCH 3/6] mm: Remove CONFIG_TRANSPARENT_HUGE_PAGECACHE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 03, 2020 at 02:54:55PM -0800, Alexander Duyck wrote:
> It looks like you are only doing a partial revert though. The original
> changes in the function were:
> @@ -1681,8 +1683,6 @@ static unsigned int
> khugepaged_scan_mm_slot(unsigned int pages,
>                 if (khugepaged_scan.address < hstart)
>                         khugepaged_scan.address = hstart;
>                 VM_BUG_ON(khugepaged_scan.address & ~HPAGE_PMD_MASK);
> -               if (shmem_file(vma->vm_file) && !shmem_huge_enabled(vma))
> -                       goto skip;
> 
>                 while (khugepaged_scan.address < hend) {
>                         int ret;
> @@ -1694,9 +1694,12 @@ static unsigned int
> khugepaged_scan_mm_slot(unsigned int pages,
>                                   khugepaged_scan.address + HPAGE_PMD_SIZE >
>                                   hend);
>                         if (shmem_file(vma->vm_file)) {
> -                               struct file *file = get_file(vma->vm_file);
> +                               struct file *file;
>                                 pgoff_t pgoff = linear_page_index(vma,
>                                                 khugepaged_scan.address);
> +                               if (!shmem_huge_enabled(vma))
> +                                       goto skip;
> +                               file = get_file(vma->vm_file);
>                                 up_read(&mm->mmap_sem);
>                                 ret = 1;
>                                 khugepaged_scan_shmem(mm, file->f_mapping,
> 
> You reverted the second piece, but I didn't notice you reverting the
> first. WIth the first piece being reverted it would make more sense as
> you would just be skipping the block that much sooner.

Ah; that was an oversight on my part.  Thank you for catching it!  I'll
resubmit with that fixed.





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux