From: Alexandre Ghiti <alex@ghiti.fr> To: linux-mm@kvack.org, mike.kravetz@oracle.com, linux@armlinux.org.uk, catalin.marinas@arm.com, will.deacon@arm.com, tony.luck@intel.com, fenghua.yu@intel.com, ralf@linux-mips.org, paul.burton@mips.com, jhogan@kernel.org, jejb@parisc-linux.org, deller@gmx.de, benh@kernel.crashing.org, paulus@samba.org, mpe@ellerman.id.au, ysato@users.sourceforge.jp, dalias@libc.org, davem@davemloft.net, tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, x86@kernel.org, arnd@arndb.de, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, linux-mips@linux-mips.org, linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-arch@vger.kernel.org Cc: Alexandre Ghiti <alex@ghiti.fr> Subject: [PATCH v5 00/11] hugetlb: Factorize hugetlb architecture primitives Date: Tue, 31 Jul 2018 06:01:44 +0000 [thread overview] Message-ID: <20180731060155.16915-1-alex@ghiti.fr> (raw) [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. powerpc could be factorized a bit more (cf huge_ptep_set_wrprotect). This patchset has been compiled on all addressed architectures with success (except for parisc, but the problem does not come from this series). Tested-by: Helge Deller <deller@gmx.de> # parisc Acked-by: Paul Burton <paul.burton@mips.com> # MIPS parts Changelog: 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 | 2 + arch/powerpc/include/asm/book3s/64/pgtable.h | 1 + arch/powerpc/include/asm/hugetlb.h | 43 ++------------ arch/powerpc/include/asm/nohash/32/pgtable.h | 2 + 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, 139 insertions(+), 382 deletions(-) -- 2.16.2
WARNING: multiple messages have this Message-ID (diff)
From: alex@ghiti.fr (Alexandre Ghiti) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v5 00/11] hugetlb: Factorize hugetlb architecture primitives Date: Tue, 31 Jul 2018 06:01:44 +0000 [thread overview] Message-ID: <20180731060155.16915-1-alex@ghiti.fr> (raw) [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. powerpc could be factorized a bit more (cf huge_ptep_set_wrprotect). This patchset has been compiled on all addressed architectures with success (except for parisc, but the problem does not come from this series). Tested-by: Helge Deller <deller@gmx.de> # parisc Acked-by: Paul Burton <paul.burton@mips.com> # MIPS parts Changelog: 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 | 2 + arch/powerpc/include/asm/book3s/64/pgtable.h | 1 + arch/powerpc/include/asm/hugetlb.h | 43 ++------------ arch/powerpc/include/asm/nohash/32/pgtable.h | 2 + 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, 139 insertions(+), 382 deletions(-) -- 2.16.2
next reply other threads:[~2018-07-31 6:01 UTC|newest] Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-07-31 6:01 Alexandre Ghiti [this message] 2018-07-31 6:01 ` [PATCH v5 00/11] hugetlb: Factorize hugetlb architecture primitives Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 01/11] hugetlb: Harmonize hugetlb.h arch specific defines with pgtable.h Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 02/11] hugetlb: Introduce generic version of hugetlb_free_pgd_range Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 03/11] hugetlb: Introduce generic version of set_huge_pte_at Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 04/11] hugetlb: Introduce generic version of huge_ptep_get_and_clear Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 05/11] hugetlb: Introduce generic version of huge_ptep_clear_flush Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 06/11] hugetlb: Introduce generic version of huge_pte_none Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 07/11] hugetlb: Introduce generic version of huge_pte_wrprotect Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 08/11] hugetlb: Introduce generic version of prepare_hugepage_range Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 09/11] hugetlb: Introduce generic version of huge_ptep_set_wrprotect Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 10:06 ` Michael Ellerman 2018-07-31 10:06 ` Michael Ellerman 2018-07-31 10:06 ` Michael Ellerman 2018-07-31 11:17 ` Alexandre Ghiti 2018-07-31 11:17 ` Alexandre Ghiti 2018-07-31 11:17 ` Alexandre Ghiti 2018-07-31 11:17 ` Alexandre Ghiti 2018-07-31 11:17 ` Alexandre Ghiti 2018-08-03 5:24 ` Alex Ghiti 2018-08-03 5:24 ` Alex Ghiti 2018-08-03 5:24 ` Alex Ghiti 2018-08-03 5:24 ` Alex Ghiti 2018-08-03 5:24 ` Alex Ghiti 2018-08-03 8:51 ` Michael Ellerman 2018-08-03 8:51 ` Michael Ellerman 2018-08-03 8:51 ` Michael Ellerman 2018-08-03 8:51 ` Michael Ellerman 2018-08-03 9:47 ` Alexandre Ghiti 2018-08-03 9:47 ` Alexandre Ghiti 2018-08-03 9:47 ` Alexandre Ghiti 2018-08-03 9:47 ` Alexandre Ghiti 2018-08-03 9:47 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 10/11] hugetlb: Introduce generic version of huge_ptep_set_access_flags Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 6:01 ` [PATCH v5 11/11] hugetlb: Introduce generic version of huge_ptep_get Alexandre Ghiti 2018-07-31 6:01 ` Alexandre Ghiti 2018-07-31 9:26 ` [PATCH v5 00/11] hugetlb: Factorize hugetlb architecture primitives Catalin Marinas 2018-07-31 9:26 ` Catalin Marinas 2018-07-31 9:26 ` Catalin Marinas 2018-07-31 20:06 ` Luiz Capitulino 2018-07-31 20:06 ` Luiz Capitulino 2018-07-31 20:06 ` Luiz Capitulino 2018-08-01 11:50 ` Alexandre Ghiti 2018-08-01 11:50 ` Alexandre Ghiti 2018-08-01 11:50 ` Alexandre Ghiti
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20180731060155.16915-1-alex@ghiti.fr \ --to=alex@ghiti.fr \ --cc=arnd@arndb.de \ --cc=benh@kernel.crashing.org \ --cc=catalin.marinas@arm.com \ --cc=dalias@libc.org \ --cc=davem@davemloft.net \ --cc=deller@gmx.de \ --cc=fenghua.yu@intel.com \ --cc=hpa@zytor.com \ --cc=jejb@parisc-linux.org \ --cc=jhogan@kernel.org \ --cc=linux-arch@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-ia64@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mips@linux-mips.org \ --cc=linux-mm@kvack.org \ --cc=linux-parisc@vger.kernel.org \ --cc=linux-sh@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=linuxppc-dev@lists.ozlabs.org \ --cc=mike.kravetz@oracle.com \ --cc=mingo@redhat.com \ --cc=mpe@ellerman.id.au \ --cc=paul.burton@mips.com \ --cc=paulus@samba.org \ --cc=ralf@linux-mips.org \ --cc=sparclinux@vger.kernel.org \ --cc=tglx@linutronix.de \ --cc=tony.luck@intel.com \ --cc=will.deacon@arm.com \ --cc=x86@kernel.org \ --cc=ysato@users.sourceforge.jp \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.