v1
2026-10-10
修复内存热拔页表销毁 · v1
修复多架构热移除页表析构不平衡,用 PageTable() 判断是否需析构并修正 NR_PAGETABLE。
原始补丁链接
子 Patch(4)
1/4
x86/mm: fix missing pgtable destructor for vmemmap tables
Since commit 49f599666420 (“mm: call ctor/dtor for kernel PTEs”), pte_alloc_one_kernel() runs the page-table constructor for kernel PTE tables. HugeTLB vmemmap optimization uses pte_alloc_one_kernel(
2/4
riscv/mm: fix hotplug page-table destructor handling
RISC-V uses the same memory-hotplug teardown code for the linear map and vmemmap, although their page-table pages are not always allocated in the same way. Late linear-map allocations run page-table c
3/4
riscv/mm: fix missing destructor for hotplug PUD tables
Commit 8472cc4503eb (“riscv: mm: call PUD/P4D ctor in special kernel pgtable alloc”) made alloc_pud_late() run the PUD page-table constructor. However, free_pud_table() still frees non-reserved PUD ta
4/4
arm64/mm: fix destructor for unconstructed hotplug page tables
Commit c594b83457cc (“arm64: mm: call pagetable dtor when freeing hot-removed page tables”) made free_hotplug_pgtable_page() unconditionally run the page-table destructor. This matches page tables all