* Alexandre Ghiti <a...@ghiti.fr> wrote:
> [CC linux-mm for inclusion in -mm tree] > > > > In order to reduce copy/paste of functions across architectures and then > > make riscv hugetlb port (and future ports) simpler and smaller, this > > patchset intends to factorize the numerous hugetlb primitives that are > > defined across all the architectures. > > > > Except for prepare_hugepage_range, this patchset moves the versions that > > are just pass-through to standard pte primitives into > > asm-generic/hugetlb.h by using the same #ifdef semantic that can be > > found in asm-generic/pgtable.h, i.e. __HAVE_ARCH_***. > > > > s390 architecture has not been tackled in this serie since it does not > > use asm-generic/hugetlb.h at all. > > > > This patchset has been compiled on all addressed architectures with > > success (except for parisc, but the problem does not come from this > > series). > > > > v6: > > - Remove nohash/32 and book3s/32 powerpc specific implementations in > order to use the generic ones. > > - Add all the Reviewed-by, Acked-by and Tested-by in the commits, > > thanks to everyone. > > > > v5: > > As suggested by Mike Kravetz, no need to move the #include > > <asm-generic/hugetlb.h> for arm and x86 architectures, let it live at > > the top of the file. > > > > v4: > > Fix powerpc build error due to misplacing of #include > > <asm-generic/hugetlb.h> outside of #ifdef CONFIG_HUGETLB_PAGE, as > > pointed by Christophe Leroy. > > > > v1, v2, v3: > > Same version, just problems with email provider and misuse of > > --batch-size option of git send-email > > Alexandre Ghiti (11): > hugetlb: Harmonize hugetlb.h arch specific defines with pgtable.h > hugetlb: Introduce generic version of hugetlb_free_pgd_range > hugetlb: Introduce generic version of set_huge_pte_at > hugetlb: Introduce generic version of huge_ptep_get_and_clear > hugetlb: Introduce generic version of huge_ptep_clear_flush > hugetlb: Introduce generic version of huge_pte_none > hugetlb: Introduce generic version of huge_pte_wrprotect > hugetlb: Introduce generic version of prepare_hugepage_range > hugetlb: Introduce generic version of huge_ptep_set_wrprotect > hugetlb: Introduce generic version of huge_ptep_set_access_flags > hugetlb: Introduce generic version of huge_ptep_get > > arch/arm/include/asm/hugetlb-3level.h | 32 +--------- > arch/arm/include/asm/hugetlb.h | 30 ---------- > arch/arm64/include/asm/hugetlb.h | 39 +++--------- > arch/ia64/include/asm/hugetlb.h | 47 ++------------- > arch/mips/include/asm/hugetlb.h | 40 +++---------- > arch/parisc/include/asm/hugetlb.h | 33 +++-------- > arch/powerpc/include/asm/book3s/32/pgtable.h | 6 -- > arch/powerpc/include/asm/book3s/64/pgtable.h | 1 + > arch/powerpc/include/asm/hugetlb.h | 43 ++------------ > arch/powerpc/include/asm/nohash/32/pgtable.h | 6 -- > arch/powerpc/include/asm/nohash/64/pgtable.h | 1 + > arch/sh/include/asm/hugetlb.h | 54 ++--------------- > arch/sparc/include/asm/hugetlb.h | 40 +++---------- > arch/x86/include/asm/hugetlb.h | 69 ---------------------- > include/asm-generic/hugetlb.h | 88 > +++++++++++++++++++++++++++- > 15 files changed, 135 insertions(+), 394 deletions(-) The x86 bits look good to me (assuming it's all tested on all relevant architectures, etc.) Acked-by: Ingo Molnar <mi...@kernel.org> Thanks, Ingo