mm: THP: workaround: only allow including specific headers for FINEGRAINED_THP config... 99/263699/1 accepted/tizen/unified/20210909.101207 submit/tizen/20210908.082952
authorSung-hun Kim <sfoon.kim@samsung.com>
Wed, 8 Sep 2021 08:18:37 +0000 (17:18 +0900)
committerSung-hun Kim <sfoon.kim@samsung.com>
Wed, 8 Sep 2021 08:18:37 +0000 (17:18 +0900)
asm/huge_mm.h and asm/finegrained_thp.h are only used for
FINEGRAINED_THP-enabled kernel. Otherwise, such as arm which does
not support contiguous PTE bit, disallow including them.

Fixes: 7d5372737d34 ("mm: THP: introducing a fine-grained transparent hugepage technique for ARM64 architecture")
Change-Id: I37c2bc46106711f4b7ee33a6838d87e929e13247
Signed-off-by: Sung-hun Kim <sfoon.kim@samsung.com>
mm/khugepaged.c
mm/memory.c
mm/mmap.c

index aa96e8e..34f0c40 100644 (file)
 
 #include <asm/tlb.h>
 #include <asm/pgalloc.h>
+#ifdef CONFIG_FINEGRAINED_THP
 #include <asm/finegrained_thp.h>
 #include <asm/huge_mm.h>
+#endif
 #include "internal.h"
 
 enum scan_result {
index 0833604..bdf18e9 100644 (file)
 #include <linux/uaccess.h>
 #include <asm/tlb.h>
 #include <asm/tlbflush.h>
+#ifdef CONFIG_FINEGRAINED_THP
 #include <asm/huge_mm.h>
 #include <asm/finegrained_thp.h>
+#else
+#include <asm-generic/huge_mm.h>
+#include <asm-generic/finegrained_thp.h>
+#endif
 
 #include "pgalloc-track.h"
 #include "internal.h"
index 02eb014..cca7268 100644 (file)
--- a/mm/mmap.c
+++ b/mm/mmap.c
 #include <asm/cacheflush.h>
 #include <asm/tlb.h>
 #include <asm/mmu_context.h>
+#ifdef CONFIG_FINEGRAINED_THP
 #include <asm/finegrained_thp.h>
+#else
+#include <asm-generic/finegrained_thp.h>
+#endif
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/mmap.h>