[LTP] [PATCH v2 2/2] hugemmap15: Check for __clear_cache()

Petr Vorel petr.vorel@gmail.com
Sun Oct 12 21:49:46 CEST 2025


It fails to compile at least on riscv64 with older compiler.
It looks like it requires clang >= 20.1.0.

Reported-by: Khem Raj <raj.khem@gmail.com>
Cc: Hui Min Mina Chou <minachou@andestech.com>
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
---
Changes v1->v2:
* Add missing #endif

 testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c b/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c
index 1dde9e87ba..f2984e2dc0 100644
--- a/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c
+++ b/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c
@@ -46,7 +46,11 @@ static void cacheflush(void *p)
 #if defined(__powerpc__)
 	asm volatile("dcbst 0,%0; sync; icbi 0,%0; isync" : : "r"(p));
 #elif defined(__arm__) || defined(__aarch64__) || defined(__riscv) || defined(__loongarch__)
+# ifdef HAVE_CLEAR_CACHE
 	__clear_cache(p, p + COPY_SIZE);
+# else
+	tst_brk(TCONF, "compiler doesn't have __clear_cache()");
+# endif
 #else
 	(void)p;
 #endif
-- 
2.51.0



More information about the ltp mailing list