RE: [PATCH v4 7/8] mm: Hook up Kconfig options for async page table freeing

Tian, Kevin
2025-09-12T08:20:01Z

> From: Lu Baolu <baolu.lu@linux.intel.com>
> Sent: Friday, September 5, 2025 1:51 PM
>
> From: Dave Hansen <dave.hansen@linux.intel.com>
>
> The CONFIG_ASYNC_PGTABLE_FREE option controls whether an architecture
> requires asynchronous page table freeing. On x86, this is selected if
> IOMMU_SVA is enabled, because both Intel and AMD IOMMU architectures
> could potentially cache kernel page table entries in their paging
> structure cache, regardless of the permission.
>
> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
> ---
> arch/x86/Kconfig | 1 +
> mm/Kconfig | 3 +++
> 2 files changed, 4 insertions(+)
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index 58d890fe2100..1b2326d81681 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -281,6 +281,7 @@ config X86
> select HAVE_PCI
> select HAVE_PERF_REGS
> select HAVE_PERF_USER_STACK_DUMP
> + select ASYNC_PGTABLE_FREE if IOMMU_SVA
> select MMU_GATHER_RCU_TABLE_FREE
> select MMU_GATHER_MERGE_VMAS
> select HAVE_POSIX_CPU_TIMERS_TASK_WORK
> diff --git a/mm/Kconfig b/mm/Kconfig
> index e443fe8cd6cf..1576409cec03 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -920,6 +920,9 @@ config PAGE_MAPCOUNT
> config PGTABLE_HAS_HUGE_LEAVES
> def_bool TRANSPARENT_HUGEPAGE || HUGETLB_PAGE
>
> +config ASYNC_PGTABLE_FREE
> + def_bool n
> +

be more accurate as ASYNC_KERN_PGTABLE_FREE? not a strong
opinion but doing so avoids giving one the impression that it's
a generic async mechanism for all pgtable pages.

Reviewed-by: Kevin Tian <kevin.tian@intel.com>