lkml.org 
[lkml]   [2024]   [Apr]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 0/3] mm/gup: fixups for hugetlb gup rework series
From
On 03/04/2024 02:32, peterx@redhat.com wrote:
> From: Peter Xu <peterx@redhat.com>
>
> Hi,
>
> This is a small patchset that will fix two known issues that got reported
> today on the previous hugetlb unification series on slow gup [1].
>
> The first issue was reported by Ryan Roberts [2] on a test failure over
> gup_longterm. Patch 1-2 should fix it. Tested with 32MB hugepages on
> arm64 VM.
>
> The second issue was reported by Nathan Chancellor [3] on a build issue
> over loongson's defconfig (loongson3_defconfig). It can be easily
> reproduced with my own build setup [4], while patch 3 fixes it, and should
> hopefully fix similar archs where pud_pfn() is not defined even if
> pud_leaf() can return true.
>
> For the 2nd issue, it's debatable whether it's an arch issue, because
> logically speaking pud_pfn() and pud_leaf() should either be both defined
> or both not. But since the current fix will be the simplest and still safe
> (I at least checked loongarch doesn't support either pud dax or pud
> hugetlb), I think we can consider having this to unbreak the build first,
> assuming this could also happen to other archs.
>
> One note is that the last 2 patches should be squashed into corresponding
> patch, while the 1st patch should be kept standalone.
>
> Thanks,
>
> [1] https://lore.kernel.org/r/20240327152332.950956-1-peterx@redhat.com
> [2] https://lore.kernel.org/r/adfdd89b-ee56-4758-836e-c66a0be7de25@arm.com
> [3] https://lore.kernel.org/r/ZgyKLLVZ4vN56uZE@x1n
> [4] https://gitlab.com/peterx/lkb-harness/-/blob/main/config.json?ref_type=heads#L32
>
> Peter Xu (3):
> mm: Allow anon exclusive check over hugetlb tail pages
> fixup! mm/gup: handle huge pmd for follow_pmd_mask()
> fixup! mm/arch: provide pud_pfn() fallback
>
> include/linux/page-flags.h | 8 +++++++-
> include/linux/pgtable.h | 6 +++++-
> mm/gup.c | 3 ---
> mm/internal.h | 10 ----------
> 4 files changed, 12 insertions(+), 15 deletions(-)
>

With these applied, gup_longterm is now passing for me on arm64. So for the series:

Tested-by: Ryan Roberts <ryan.roberts@arm.com>


\
 
 \ /
  Last update: 2024-05-27 16:20    [W:0.441 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site