On Tue, Jan 27, 2026 at 1:16 PM Qi Zheng <[email protected]> wrote: > > From: Qi Zheng <[email protected]> > > On a 64-bit system, madvise(MADV_DONTNEED) may cause a large number of > empty PTE page table pages (such as 100GB+). To resolve this problem, > first enable MMU_GATHER_RCU_TABLE_FREE to prepare for enabling the > PT_RECLAIM feature, which resolves this problem. > > Signed-off-by: Qi Zheng <[email protected]> > Cc: Richard Henderson <[email protected]> > Cc: Matt Turner <[email protected]> > --- > arch/alpha/Kconfig | 1 + > arch/alpha/include/asm/tlb.h | 6 +++--- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig > index 80367f2cf821c..6c7dbf0adad62 100644 > --- a/arch/alpha/Kconfig > +++ b/arch/alpha/Kconfig > @@ -38,6 +38,7 @@ config ALPHA > select OLD_SIGSUSPEND > select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67 > select MMU_GATHER_NO_RANGE > + select MMU_GATHER_RCU_TABLE_FREE > select SPARSEMEM_EXTREME if SPARSEMEM > select ZONE_DMA > help > diff --git a/arch/alpha/include/asm/tlb.h b/arch/alpha/include/asm/tlb.h > index 4f79e331af5ea..ad586b898fd6b 100644 > --- a/arch/alpha/include/asm/tlb.h > +++ b/arch/alpha/include/asm/tlb.h > @@ -4,7 +4,7 @@ > > #include <asm-generic/tlb.h> > > -#define __pte_free_tlb(tlb, pte, address) pte_free((tlb)->mm, > pte) > -#define __pmd_free_tlb(tlb, pmd, address) pmd_free((tlb)->mm, > pmd) > - > +#define __pte_free_tlb(tlb, pte, address) tlb_remove_ptdesc((tlb), > page_ptdesc(pte)) > +#define __pmd_free_tlb(tlb, pmd, address) tlb_remove_ptdesc((tlb), > virt_to_ptdesc(pmd)) > + > #endif > -- > 2.20.1 >
Looks good from an Alpha perspective. Acked-by: Magnus Lindholm <[email protected]>
