[RFC PATCH 06/18] mm: introduce CONFIG_FREE_USER_PTE

From: Qi Zheng
Date: Fri Apr 29 2022 - 09:37:15 EST


This configuration variable will be used to build the code needed to
free user PTE page table pages.

The PTE page table setting and clearing functions(such as set_pte_at())
are in the architecture's files, and these functions will be hooked to
implement FREE_USER_PTE, so the architecture support is needed.

Signed-off-by: Qi Zheng <zhengqi.arch@xxxxxxxxxxxxx>
---
mm/Kconfig | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/mm/Kconfig b/mm/Kconfig
index 034d87953600..af99ed626732 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -909,6 +909,16 @@ config ANON_VMA_NAME
area from being merged with adjacent virtual memory areas due to the
difference in their name.

+config ARCH_SUPPORTS_FREE_USER_PTE
+ def_bool n
+
+config FREE_USER_PTE
+ bool "Free user PTE page tables"
+ default y
+ depends on ARCH_SUPPORTS_FREE_USER_PTE && MMU && SMP
+ help
+ Try to free user PTE page table page when its all entries are none.
+
source "mm/damon/Kconfig"

endmenu
--
2.20.1