[PATCH] mm/huge_memory: add TRANSPARENT_HUGEPAGE_NEVER for THP

ye.xingchen@zte.com.cn posted 1 patch 2 years, 9 months ago
mm/Kconfig       | 5 +++++
mm/huge_memory.c | 2 ++
2 files changed, 7 insertions(+)
[PATCH] mm/huge_memory: add TRANSPARENT_HUGEPAGE_NEVER for THP
Posted by ye.xingchen@zte.com.cn 2 years, 9 months ago
From: ye xingchen <ye.xingchen@zte.com.cn>

Sometimes we may need the /sys/kernel/mm/transparent_hugepage/enabled to
default as [never] at the first time.

Signed-off-by: ye xingchen <ye.xingchen@zte.com.cn>
---
 mm/Kconfig       | 5 +++++
 mm/huge_memory.c | 2 ++
 2 files changed, 7 insertions(+)

diff --git a/mm/Kconfig b/mm/Kconfig
index ff7b209dec05..ded8c1da6267 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -797,6 +797,11 @@ choice
 	  madvise(MADV_HUGEPAGE) but it won't risk to increase the
 	  memory footprint of applications without a guaranteed
 	  benefit.
+
+	config TRANSPARENT_HUGEPAGE_NEVER
+		bool "never"
+	help
+	  Disabling Transparent Hugepage.
 endchoice

 config THP_SWAP
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index c0c57828110d..3571417aa70a 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -60,6 +60,8 @@ unsigned long transparent_hugepage_flags __read_mostly =
 #endif
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE_MADVISE
 	(1<<TRANSPARENT_HUGEPAGE_REQ_MADV_FLAG)|
+#endif
+#ifdef CONFIG_TRANSPARENT_HUGEPAGE_NEVER
 #endif
 	(1<<TRANSPARENT_HUGEPAGE_DEFRAG_REQ_MADV_FLAG)|
 	(1<<TRANSPARENT_HUGEPAGE_DEFRAG_KHUGEPAGED_FLAG)|
-- 
2.25.1
Re: [PATCH] mm/huge_memory: add TRANSPARENT_HUGEPAGE_NEVER for THP
Posted by Matthew Wilcox 2 years, 9 months ago
On Wed, Nov 30, 2022 at 04:51:46PM +0800, ye.xingchen@zte.com.cn wrote:
> From: ye xingchen <ye.xingchen@zte.com.cn>
> 
> Sometimes we may need the /sys/kernel/mm/transparent_hugepage/enabled to
> default as [never] at the first time.

What is going wrong with THP enabled that you need to disable it?
Re: [PATCH] mm/huge_memory: add TRANSPARENT_HUGEPAGE_NEVER for THP
Posted by David Rientjes 2 years, 9 months ago
On Thu, 1 Dec 2022, Matthew Wilcox wrote:

> On Wed, Nov 30, 2022 at 04:51:46PM +0800, ye.xingchen@zte.com.cn wrote:
> > From: ye xingchen <ye.xingchen@zte.com.cn>
> > 
> > Sometimes we may need the /sys/kernel/mm/transparent_hugepage/enabled to
> > default as [never] at the first time.
> 
> What is going wrong with THP enabled that you need to disable it?
> 

That would be useful to know in addition to why this needs to be part of 
.config and not simply using the kernel command line option.
Re: [PATCH] mm/huge_memory: add TRANSPARENT_HUGEPAGE_NEVER for THP
Posted by Hugh Dickins 2 years, 9 months ago
On Fri, 2 Dec 2022, David Rientjes wrote:
> On Thu, 1 Dec 2022, Matthew Wilcox wrote:
> > On Wed, Nov 30, 2022 at 04:51:46PM +0800, ye.xingchen@zte.com.cn wrote:
> > > From: ye xingchen <ye.xingchen@zte.com.cn>
> > > 
> > > Sometimes we may need the /sys/kernel/mm/transparent_hugepage/enabled to
> > > default as [never] at the first time.
> > 
> > What is going wrong with THP enabled that you need to disable it?
> > 
> 
> That would be useful to know in addition to why this needs to be part of 
> .config and not simply using the kernel command line option.

There is also the puzzle of what new feature gets added by

#ifdef CONFIG_TRANSPARENT_HUGEPAGE_NEVER
#endif

Hugh