Message ID | 20220404074652.68024-4-songmuchun@bytedance.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | cleanup hugetlb_vmemmap | expand |
On 4/4/22 09:46, Muchun Song wrote: > --- a/mm/hugetlb_vmemmap.c > +++ b/mm/hugetlb_vmemmap.c > @@ -188,7 +188,7 @@ > #define RESERVE_VMEMMAP_NR 1U > #define RESERVE_VMEMMAP_SIZE (RESERVE_VMEMMAP_NR << PAGE_SHIFT) > > -DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON, > +DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON, > hugetlb_optimize_vmemmap_key); > EXPORT_SYMBOL(hugetlb_optimize_vmemmap_key); Hi, looks like just below here you forgot to update: static enum vmemmap_optimize_mode vmemmap_optimize_mode = IS_ENABLED(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON); so it refers to CONFIG name that no longer exists? Vlastimil
On Fri, May 27, 2022 at 09:39:41AM +0200, Vlastimil Babka wrote: > On 4/4/22 09:46, Muchun Song wrote: > > --- a/mm/hugetlb_vmemmap.c > > +++ b/mm/hugetlb_vmemmap.c > > @@ -188,7 +188,7 @@ > > #define RESERVE_VMEMMAP_NR 1U > > #define RESERVE_VMEMMAP_SIZE (RESERVE_VMEMMAP_NR << PAGE_SHIFT) > > > > -DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON, > > +DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON, > > hugetlb_optimize_vmemmap_key); > > EXPORT_SYMBOL(hugetlb_optimize_vmemmap_key); > > Hi, > > looks like just below here you forgot to update: > > static enum vmemmap_optimize_mode vmemmap_optimize_mode = > IS_ENABLED(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON); > Good catch! > so it refers to CONFIG name that no longer exists? > Right. My bad. I forgot to replace it. Will fix it ASAP. Thanks.
On 4/4/22 00:46, Muchun Song wrote: > The word of "free" is not expressive enough to express the feature of optimizing > vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". > In this patch , cheanup configs to make code more expressive. Commit message might look better as: The keyword "free" is not expressive enough to describe the feature of optimizing vmemmap pages associated with each HugeTLB page. Rename the keyword to "optimize". Change configs to make code more expressive. > > Signed-off-by: Muchun Song <songmuchun@bytedance.com> > --- > Documentation/admin-guide/kernel-parameters.txt | 4 ++-- > Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- > arch/arm64/Kconfig | 2 +- > arch/arm64/mm/flush.c | 2 +- > arch/x86/Kconfig | 2 +- > arch/x86/mm/init_64.c | 2 +- > fs/Kconfig | 16 ++++++++-------- > include/linux/hugetlb.h | 2 +- > include/linux/mm.h | 2 +- > include/linux/page-flags.h | 6 +++--- > mm/Makefile | 2 +- > mm/hugetlb_vmemmap.c | 4 ++-- > mm/hugetlb_vmemmap.h | 4 ++-- > mm/sparse-vmemmap.c | 4 ++-- > 14 files changed, 27 insertions(+), 27 deletions(-) I see the issue found by Vlastimil is already fixed here [1]. With that this looks good. [1] https://lore.kernel.org/linux-mm/20220527081948.68832-1-songmuchun@bytedance.com/ Acked-by: Mike Kravetz <mike.kravetz@oracle.com>
On 04.04.22 09:46, Muchun Song wrote: > The word of "free" is not expressive enough to express the feature of optimizing > vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". > In this patch , cheanup configs to make code more expressive. Nit: why not simply CONFIG_HUGETLB_OPTIMIZE_VMEMMAP if we're touching this already? At least I don't see value in the additional "PAGE" :) > > Signed-off-by: Muchun Song <songmuchun@bytedance.com> > --- > Documentation/admin-guide/kernel-parameters.txt | 4 ++-- > Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- > arch/arm64/Kconfig | 2 +- > arch/arm64/mm/flush.c | 2 +- > arch/x86/Kconfig | 2 +- > arch/x86/mm/init_64.c | 2 +- > fs/Kconfig | 16 ++++++++-------- > include/linux/hugetlb.h | 2 +- > include/linux/mm.h | 2 +- > include/linux/page-flags.h | 6 +++--- > mm/Makefile | 2 +- > mm/hugetlb_vmemmap.c | 4 ++-- > mm/hugetlb_vmemmap.h | 4 ++-- > mm/sparse-vmemmap.c | 4 ++-- > 14 files changed, 27 insertions(+), 27 deletions(-) > > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt > index 56edbe3f458f..89a58ac49d5f 100644 > --- a/Documentation/admin-guide/kernel-parameters.txt > +++ b/Documentation/admin-guide/kernel-parameters.txt > @@ -1660,7 +1660,7 @@ > Format: size[KMG] > > hugetlb_free_vmemmap= We didn't change the parameter name in #2, correct?
On Wed, Jun 01, 2022 at 11:32:37AM +0200, David Hildenbrand wrote: > On 04.04.22 09:46, Muchun Song wrote: > > The word of "free" is not expressive enough to express the feature of optimizing > > vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". > > In this patch , cheanup configs to make code more expressive. > > Nit: why not simply CONFIG_HUGETLB_OPTIMIZE_VMEMMAP if we're touching > this already? At least I don't see value in the additional "PAGE" :) > I thought it keep consistent with CONFIG_HUGETLB_PAGE. If you think CONFIG_HUGETLB_OPTIMIZE_VMEMMAP is a better name, maybe we need to another separate patch since this series is already on mm-stable branch. > > > > Signed-off-by: Muchun Song <songmuchun@bytedance.com> > > --- > > Documentation/admin-guide/kernel-parameters.txt | 4 ++-- > > Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- > > arch/arm64/Kconfig | 2 +- > > arch/arm64/mm/flush.c | 2 +- > > arch/x86/Kconfig | 2 +- > > arch/x86/mm/init_64.c | 2 +- > > fs/Kconfig | 16 ++++++++-------- > > include/linux/hugetlb.h | 2 +- > > include/linux/mm.h | 2 +- > > include/linux/page-flags.h | 6 +++--- > > mm/Makefile | 2 +- > > mm/hugetlb_vmemmap.c | 4 ++-- > > mm/hugetlb_vmemmap.h | 4 ++-- > > mm/sparse-vmemmap.c | 4 ++-- > > 14 files changed, 27 insertions(+), 27 deletions(-) > > > > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt > > index 56edbe3f458f..89a58ac49d5f 100644 > > --- a/Documentation/admin-guide/kernel-parameters.txt > > +++ b/Documentation/admin-guide/kernel-parameters.txt > > @@ -1660,7 +1660,7 @@ > > Format: size[KMG] > > > > hugetlb_free_vmemmap= > > We didn't change the parameter name in #2, correct? > I think this is a interface to users. Is it correct to change it? Thanks.
On 01.06.22 11:54, Muchun Song wrote: > On Wed, Jun 01, 2022 at 11:32:37AM +0200, David Hildenbrand wrote: >> On 04.04.22 09:46, Muchun Song wrote: >>> The word of "free" is not expressive enough to express the feature of optimizing >>> vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". >>> In this patch , cheanup configs to make code more expressive. >> >> Nit: why not simply CONFIG_HUGETLB_OPTIMIZE_VMEMMAP if we're touching >> this already? At least I don't see value in the additional "PAGE" :) >> > > I thought it keep consistent with CONFIG_HUGETLB_PAGE. If you think > CONFIG_HUGETLB_OPTIMIZE_VMEMMAP is a better name, maybe we need to > another separate patch since this series is already on mm-stable branch. I see, makes sense then. >>> >>> Signed-off-by: Muchun Song <songmuchun@bytedance.com> >>> --- >>> Documentation/admin-guide/kernel-parameters.txt | 4 ++-- >>> Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- >>> arch/arm64/Kconfig | 2 +- >>> arch/arm64/mm/flush.c | 2 +- >>> arch/x86/Kconfig | 2 +- >>> arch/x86/mm/init_64.c | 2 +- >>> fs/Kconfig | 16 ++++++++-------- >>> include/linux/hugetlb.h | 2 +- >>> include/linux/mm.h | 2 +- >>> include/linux/page-flags.h | 6 +++--- >>> mm/Makefile | 2 +- >>> mm/hugetlb_vmemmap.c | 4 ++-- >>> mm/hugetlb_vmemmap.h | 4 ++-- >>> mm/sparse-vmemmap.c | 4 ++-- >>> 14 files changed, 27 insertions(+), 27 deletions(-) >>> >>> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt >>> index 56edbe3f458f..89a58ac49d5f 100644 >>> --- a/Documentation/admin-guide/kernel-parameters.txt >>> +++ b/Documentation/admin-guide/kernel-parameters.txt >>> @@ -1660,7 +1660,7 @@ >>> Format: size[KMG] >>> >>> hugetlb_free_vmemmap= >> >> We didn't change the parameter name in #2, correct? >> > > I think this is a interface to users. Is it correct to > change it? I guess so ... I was just wanted to confirm that this is still correct :)
On Wed, Jun 01, 2022 at 12:10:29PM +0200, David Hildenbrand wrote: > On 01.06.22 11:54, Muchun Song wrote: > > On Wed, Jun 01, 2022 at 11:32:37AM +0200, David Hildenbrand wrote: > >> On 04.04.22 09:46, Muchun Song wrote: > >>> The word of "free" is not expressive enough to express the feature of optimizing > >>> vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". > >>> In this patch , cheanup configs to make code more expressive. > >> > >> Nit: why not simply CONFIG_HUGETLB_OPTIMIZE_VMEMMAP if we're touching > >> this already? At least I don't see value in the additional "PAGE" :) > >> > > > > I thought it keep consistent with CONFIG_HUGETLB_PAGE. If you think > > CONFIG_HUGETLB_OPTIMIZE_VMEMMAP is a better name, maybe we need to > > another separate patch since this series is already on mm-stable branch. > > I see, makes sense then. > > >>> > >>> Signed-off-by: Muchun Song <songmuchun@bytedance.com> > >>> --- > >>> Documentation/admin-guide/kernel-parameters.txt | 4 ++-- > >>> Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- > >>> arch/arm64/Kconfig | 2 +- > >>> arch/arm64/mm/flush.c | 2 +- > >>> arch/x86/Kconfig | 2 +- > >>> arch/x86/mm/init_64.c | 2 +- > >>> fs/Kconfig | 16 ++++++++-------- > >>> include/linux/hugetlb.h | 2 +- > >>> include/linux/mm.h | 2 +- > >>> include/linux/page-flags.h | 6 +++--- > >>> mm/Makefile | 2 +- > >>> mm/hugetlb_vmemmap.c | 4 ++-- > >>> mm/hugetlb_vmemmap.h | 4 ++-- > >>> mm/sparse-vmemmap.c | 4 ++-- > >>> 14 files changed, 27 insertions(+), 27 deletions(-) > >>> > >>> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt > >>> index 56edbe3f458f..89a58ac49d5f 100644 > >>> --- a/Documentation/admin-guide/kernel-parameters.txt > >>> +++ b/Documentation/admin-guide/kernel-parameters.txt > >>> @@ -1660,7 +1660,7 @@ > >>> Format: size[KMG] > >>> > >>> hugetlb_free_vmemmap= > >> > >> We didn't change the parameter name in #2, correct? > >> > > > > I think this is a interface to users. Is it correct to > > change it? > > I guess so ... I was just wanted to confirm that this is still correct :) > Well, I think it is not correct to change it since it could change behavior to users. :-) Thanks.
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 56edbe3f458f..89a58ac49d5f 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -1660,7 +1660,7 @@ Format: size[KMG] hugetlb_free_vmemmap= - [KNL] Reguires CONFIG_HUGETLB_PAGE_FREE_VMEMMAP + [KNL] Reguires CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP enabled. Allows heavy hugetlb users to free up some more memory (7 * PAGE_SIZE for each 2MB hugetlb page). @@ -1669,7 +1669,7 @@ on: enable the feature off: disable the feature - Built with CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON=y, + Built with CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON=y, the default is on. This is not compatible with memory_hotplug.memmap_on_memory. diff --git a/Documentation/admin-guide/mm/hugetlbpage.rst b/Documentation/admin-guide/mm/hugetlbpage.rst index 0166f9de3428..a90330d0a837 100644 --- a/Documentation/admin-guide/mm/hugetlbpage.rst +++ b/Documentation/admin-guide/mm/hugetlbpage.rst @@ -164,7 +164,7 @@ default_hugepagesz will all result in 256 2M huge pages being allocated. Valid default huge page size is architecture dependent. hugetlb_free_vmemmap - When CONFIG_HUGETLB_PAGE_FREE_VMEMMAP is set, this enables freeing + When CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP is set, this enables optimizing unused vmemmap pages associated with each HugeTLB page. When multiple huge page sizes are supported, ``/proc/sys/vm/nr_hugepages`` diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index bb7fc91d14f4..42ff6d3dbfb5 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -96,7 +96,7 @@ config ARM64 select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_HUGE_PMD_SHARE if ARM64_4K_PAGES || (ARM64_16K_PAGES && !ARM64_VA_BITS_36) - select ARCH_WANT_HUGETLB_PAGE_FREE_VMEMMAP + select ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP select ARCH_WANT_LD_ORPHAN_WARN select ARCH_WANTS_NO_INSTR select ARCH_HAS_UBSAN_SANITIZE_ALL diff --git a/arch/arm64/mm/flush.c b/arch/arm64/mm/flush.c index d19a13234a81..9e39598bbc21 100644 --- a/arch/arm64/mm/flush.c +++ b/arch/arm64/mm/flush.c @@ -78,7 +78,7 @@ void flush_dcache_page(struct page *page) /* * Only the head page's flags of HugeTLB can be cleared since the tail * vmemmap pages associated with each HugeTLB page are mapped with - * read-only when CONFIG_HUGETLB_PAGE_FREE_VMEMMAP is enabled (more + * read-only when CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP is enabled (more * details can refer to vmemmap_remap_pte()). Although * __sync_icache_dcache() only set PG_dcache_clean flag on the head * page struct, some tail page structs still can be seen the flag is diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index a4cc8dd871f2..7ec9a91e2386 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -121,7 +121,7 @@ config X86 select ARCH_WANTS_NO_INSTR select ARCH_WANT_GENERAL_HUGETLB select ARCH_WANT_HUGE_PMD_SHARE - select ARCH_WANT_HUGETLB_PAGE_FREE_VMEMMAP if X86_64 + select ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP if X86_64 select ARCH_WANT_LD_ORPHAN_WARN select ARCH_WANTS_THP_SWAP if X86_64 select ARCH_HAS_PARANOID_L1D_FLUSH diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 96d34ebb20a9..af34dd1510d6 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -1269,7 +1269,7 @@ static struct kcore_list kcore_vsyscall; static void __init register_page_bootmem_info(void) { -#if defined(CONFIG_NUMA) || defined(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP) +#if defined(CONFIG_NUMA) || defined(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP) int i; for_each_online_node(i) diff --git a/fs/Kconfig b/fs/Kconfig index 8f6ab1cf5115..5976eb33535f 100644 --- a/fs/Kconfig +++ b/fs/Kconfig @@ -250,22 +250,22 @@ config HUGETLB_PAGE # to enable the feature of minimizing overhead of struct page associated with # each HugeTLB page. # -config ARCH_WANT_HUGETLB_PAGE_FREE_VMEMMAP +config ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP bool -config HUGETLB_PAGE_FREE_VMEMMAP +config HUGETLB_PAGE_OPTIMIZE_VMEMMAP def_bool HUGETLB_PAGE - depends on ARCH_WANT_HUGETLB_PAGE_FREE_VMEMMAP + depends on ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP depends on SPARSEMEM_VMEMMAP -config HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON - bool "Default freeing vmemmap pages of HugeTLB to on" +config HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON + bool "Default optimizing vmemmap pages of HugeTLB to on" default n - depends on HUGETLB_PAGE_FREE_VMEMMAP + depends on HUGETLB_PAGE_OPTIMIZE_VMEMMAP help - When using HUGETLB_PAGE_FREE_VMEMMAP, the freeing unused vmemmap + When using HUGETLB_PAGE_OPTIMIZE_VMEMMAP, the optimizing unused vmemmap pages associated with each HugeTLB page is default off. Say Y here - to enable freeing vmemmap pages of HugeTLB by default. It can then + to enable optimizing vmemmap pages of HugeTLB by default. It can then be disabled on the command line via hugetlb_free_vmemmap=off. config MEMFD_CREATE diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h index c16fbb1228a3..c40dda4daf51 100644 --- a/include/linux/hugetlb.h +++ b/include/linux/hugetlb.h @@ -617,7 +617,7 @@ struct hstate { unsigned int nr_huge_pages_node[MAX_NUMNODES]; unsigned int free_huge_pages_node[MAX_NUMNODES]; unsigned int surplus_huge_pages_node[MAX_NUMNODES]; -#ifdef CONFIG_HUGETLB_PAGE_FREE_VMEMMAP +#ifdef CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP unsigned int optimize_vmemmap_pages; #endif #ifdef CONFIG_CGROUP_HUGETLB diff --git a/include/linux/mm.h b/include/linux/mm.h index 26428ff262fc..75f7d309a9cf 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -3188,7 +3188,7 @@ static inline void print_vma_addr(char *prefix, unsigned long rip) } #endif -#ifdef CONFIG_HUGETLB_PAGE_FREE_VMEMMAP +#ifdef CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP int vmemmap_remap_free(unsigned long start, unsigned long end, unsigned long reuse); int vmemmap_remap_alloc(unsigned long start, unsigned long end, diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 557d15ef3dc0..b70124b9c7c1 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -199,13 +199,13 @@ enum pageflags { #ifndef __GENERATING_BOUNDS_H -#ifdef CONFIG_HUGETLB_PAGE_FREE_VMEMMAP -DECLARE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON, +#ifdef CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP +DECLARE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON, hugetlb_optimize_vmemmap_key); static __always_inline bool hugetlb_optimize_vmemmap_enabled(void) { - return static_branch_maybe(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON, + return static_branch_maybe(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON, &hugetlb_optimize_vmemmap_key); } diff --git a/mm/Makefile b/mm/Makefile index 4cc13f3179a5..6f9ffa968a1a 100644 --- a/mm/Makefile +++ b/mm/Makefile @@ -77,7 +77,7 @@ obj-$(CONFIG_FRONTSWAP) += frontswap.o obj-$(CONFIG_ZSWAP) += zswap.o obj-$(CONFIG_HAS_DMA) += dmapool.o obj-$(CONFIG_HUGETLBFS) += hugetlb.o -obj-$(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP) += hugetlb_vmemmap.o +obj-$(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP) += hugetlb_vmemmap.o obj-$(CONFIG_NUMA) += mempolicy.o obj-$(CONFIG_SPARSEMEM) += sparse.o obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o diff --git a/mm/hugetlb_vmemmap.c b/mm/hugetlb_vmemmap.c index f25294973398..2655434a946b 100644 --- a/mm/hugetlb_vmemmap.c +++ b/mm/hugetlb_vmemmap.c @@ -188,7 +188,7 @@ #define RESERVE_VMEMMAP_NR 1U #define RESERVE_VMEMMAP_SIZE (RESERVE_VMEMMAP_NR << PAGE_SHIFT) -DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON, +DEFINE_STATIC_KEY_MAYBE(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON, hugetlb_optimize_vmemmap_key); EXPORT_SYMBOL(hugetlb_optimize_vmemmap_key); @@ -276,7 +276,7 @@ void __init hugetlb_vmemmap_init(struct hstate *h) /* * There are only (RESERVE_VMEMMAP_SIZE / sizeof(struct page)) struct - * page structs that can be used when CONFIG_HUGETLB_PAGE_FREE_VMEMMAP, + * page structs that can be used when CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP, * so add a BUILD_BUG_ON to catch invalid usage of the tail struct page. */ BUILD_BUG_ON(__NR_USED_SUBPAGE >= diff --git a/mm/hugetlb_vmemmap.h b/mm/hugetlb_vmemmap.h index 9760537849b5..109b0a53b6fe 100644 --- a/mm/hugetlb_vmemmap.h +++ b/mm/hugetlb_vmemmap.h @@ -10,7 +10,7 @@ #define _LINUX_HUGETLB_VMEMMAP_H #include <linux/hugetlb.h> -#ifdef CONFIG_HUGETLB_PAGE_FREE_VMEMMAP +#ifdef CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP int hugetlb_vmemmap_alloc(struct hstate *h, struct page *head); void hugetlb_vmemmap_free(struct hstate *h, struct page *head); void hugetlb_vmemmap_init(struct hstate *h); @@ -41,5 +41,5 @@ static inline unsigned int hugetlb_optimize_vmemmap_pages(struct hstate *h) { return 0; } -#endif /* CONFIG_HUGETLB_PAGE_FREE_VMEMMAP */ +#endif /* CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP */ #endif /* _LINUX_HUGETLB_VMEMMAP_H */ diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c index 8aecd6b3896c..52f36527bab3 100644 --- a/mm/sparse-vmemmap.c +++ b/mm/sparse-vmemmap.c @@ -34,7 +34,7 @@ #include <asm/pgalloc.h> #include <asm/tlbflush.h> -#ifdef CONFIG_HUGETLB_PAGE_FREE_VMEMMAP +#ifdef CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP /** * struct vmemmap_remap_walk - walk vmemmap page table * @@ -420,7 +420,7 @@ int vmemmap_remap_alloc(unsigned long start, unsigned long end, return 0; } -#endif /* CONFIG_HUGETLB_PAGE_FREE_VMEMMAP */ +#endif /* CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP */ /* * Allocate a block of memory to be used to back the virtual memory map
The word of "free" is not expressive enough to express the feature of optimizing vmemmap pages associated with each HugeTLB, rename this keywork to "optimeze". In this patch , cheanup configs to make code more expressive. Signed-off-by: Muchun Song <songmuchun@bytedance.com> --- Documentation/admin-guide/kernel-parameters.txt | 4 ++-- Documentation/admin-guide/mm/hugetlbpage.rst | 2 +- arch/arm64/Kconfig | 2 +- arch/arm64/mm/flush.c | 2 +- arch/x86/Kconfig | 2 +- arch/x86/mm/init_64.c | 2 +- fs/Kconfig | 16 ++++++++-------- include/linux/hugetlb.h | 2 +- include/linux/mm.h | 2 +- include/linux/page-flags.h | 6 +++--- mm/Makefile | 2 +- mm/hugetlb_vmemmap.c | 4 ++-- mm/hugetlb_vmemmap.h | 4 ++-- mm/sparse-vmemmap.c | 4 ++-- 14 files changed, 27 insertions(+), 27 deletions(-)