[PATCH 09/11] mm/hugetlb: Remove hugetlb_optimize_vmemmap_key static key

Kiryl Shutsemau
2025-12-05T19:44:10Z

The static key is no longer used.

Removed it.

Signed-off-by: Kiryl Shutsemau <kas@kernel.org>
---
include/linux/page-flags.h | 2 --
mm/hugetlb_vmemmap.c | 14 ++------------
2 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index 8acb141a127b..02a851ab7f5e 100644
--- a/include/linux/page-flags.h
+++ b/include/linux/page-flags.h
@@ -198,8 +198,6 @@ enum pageflags {

#ifndef __GENERATING_BOUNDS_H

-DECLARE_STATIC_KEY_FALSE(hugetlb_optimize_vmemmap_key);
-
static __always_inline unsigned long _compound_head(const struct page *page)
{
unsigned long info = READ_ONCE(page->compound_info);
diff --git a/mm/hugetlb_vmemmap.c b/mm/hugetlb_vmemmap.c
index 0f142e4eafb9..81f5160ff216 100644
--- a/mm/hugetlb_vmemmap.c
+++ b/mm/hugetlb_vmemmap.c
@@ -399,9 +399,6 @@ static int vmemmap_remap_alloc(unsigned long start, unsigned long end,
return vmemmap_remap_range(start, end, &walk);
}

-DEFINE_STATIC_KEY_FALSE(hugetlb_optimize_vmemmap_key);
-EXPORT_SYMBOL(hugetlb_optimize_vmemmap_key);
-
static bool vmemmap_optimize_enabled = IS_ENABLED(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON);
static int __init hugetlb_vmemmap_optimize_param(char *buf)
{
@@ -432,10 +429,8 @@ static int __hugetlb_vmemmap_restore_folio(const struct hstate *h,
* discarded vmemmap pages must be allocated and remapping.
*/
ret = vmemmap_remap_alloc(vmemmap_start, vmemmap_end, flags);
- if (!ret) {
+ if (!ret)
folio_clear_hugetlb_vmemmap_optimized(folio);
- static_branch_dec(&hugetlb_optimize_vmemmap_key);
- }

return ret;
}
@@ -548,8 +543,6 @@ static int __hugetlb_vmemmap_optimize_folio(struct hstate *h,
if (!h->vmemmap_tail)
return -ENOMEM;

- static_branch_inc(&hugetlb_optimize_vmemmap_key);
-
/*
* Very Subtle
* If VMEMMAP_REMAP_NO_TLB_FLUSH is set, TLB flushing is not performed
@@ -589,10 +582,8 @@ static int __hugetlb_vmemmap_optimize_folio(struct hstate *h,
vmemmap_head, vmemmap_tail,
vmemmap_pages, flags);
out:
- if (ret) {
- static_branch_dec(&hugetlb_optimize_vmemmap_key);
+ if (ret)
folio_clear_hugetlb_vmemmap_optimized(folio);
- }

return ret;
}
@@ -658,7 +649,6 @@ static void __hugetlb_vmemmap_optimize_folios(struct hstate *h,
register_page_bootmem_memmap(pfn_to_section_nr(spfn),
&folio->page,
HUGETLB_VMEMMAP_RESERVE_SIZE);
- static_branch_inc(&hugetlb_optimize_vmemmap_key);
continue;
}

--
2.51.2