v2 2026-07-17

移除CONFIG_HAVE_BOOTMEM_INFO_NODE · v2

移除CONFIG_HAVE_BOOTMEM_INFO_NODE,清理vmemmap预留页释放相关代码。

原始补丁链接

子 Patch(10)

1/10
x86/mm: drop order parameter from free_pagetable()
删除 free_pagetable() 的 order 参数,因所有调用者均传 0,简化 x86 内存初始化代码。
2/10
mm: provide free_reserved_pages(), removing x86 variant
将 free_reserved_page() 扩展为 free_reserved_pages() 并移至通用代码,替代 x86 自定义实现,用于释放 vmemmap PMD 页等高阶保留页。
3/10
s390/mm: use free_reserved_pages() in vmem_free_pages()
s390 的 vmem_free_pages() 改用通用 free_reserved_pages(),替换原有内联实现,减少架构特定代码。
4/10
mm/bootmem_info: allow calling free_bootmem_page() on pages without a bootmem_type
As preparation for further changes, let’s temporarily allow freeing pages that were not previously registered. This will allow freeing unregistered vmemmap pages allocated during boot through free_bo
5/10
x86/mm: stop marking vmemmap as SECTION_INFO
We added the whole bootmem registration machinery in commit 04753278769f (“memory hotplug: register section/node id to free”). The main use case was to remember to which memory section memmap pages b
6/10
x86/mm: stop marking page tables as MIX_SECTION_INFO
There is no good reason to mark boot page tables as MIX_SECTION_INFO: we only free boot page tables when they are completely empty, and memory offlining/hotunplug doesn’t benefit from it in any way.
7/10
x86/mm: remove CONFIG_HAVE_BOOTMEM_INFO_NODE
CONFIG_HAVE_BOOTMEM_INFO_NODE now essentially doesn’t do anything. So let’s remove support for CONFIG_HAVE_BOOTMEM_INFO_NODE. Reviewed-by: Mike Rapoport (Microsoft) rppt@kernel.org Signed-off-by:
8/10
mm/hugetlb_vmemmap: remove bootmem_info leftovers
We never set CONFIG_HAVE_BOOTMEM_INFO_NODE, so we can just switch to free_reserved_page() and drop the register_page_bootmem_memmap() call. Reviewed-by: Mike Rapoport (Microsoft) rppt@kernel.org Re
9/10
mm/sparse: remove bootmem_info.h include
No longer required, so let’s remove it. Reviewed-by: Mike Rapoport (Microsoft) rppt@kernel.org Reviewed-by: Muchun Song muchun.song@linux.dev Signed-off-by: David Hildenbrand (Arm) <david@kernel.
10/10
mm/bootmem_info: remove CONFIG_HAVE_BOOTMEM_INFO_NODE
The whole infrastructure is unused now. Let’s remove the config option along with mm/bootmem_info. + include/linux/bootmem_info.h. Reviewed-by: Mike Rapoport (Microsoft) rppt@kernel.org Reviewed-by