[LTP] [RFC PATCH v1 1/1] overcommit_memory: Disable optimization for malloc to prevent false positives

Jan Polensky japo@linux.ibm.com
Tue May 20 17:25:51 CEST 2025


When compiling with GCC 15.1.1+, the default-enabled -fmalloc-dce=2 and
-fallocation-dce under -O2 can eliminate the entire malloc block because its
result is only compared to NULL and/or passed to free().

This leads to false positives in tests that expect malloc() to fail under memory
pressure, as the allocation is optimized away.

Disable this optimization for the affected function to preserve the intended
test behavior.

References: https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gcc/Optimize-Options.html
Signed-off-by: Jan Polensky <japo@linux.ibm.com>
---
 testcases/kernel/mem/tunable/overcommit_memory.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/testcases/kernel/mem/tunable/overcommit_memory.c b/testcases/kernel/mem/tunable/overcommit_memory.c
index b5beebbcd3c4..fb42dbb75a00 100644
--- a/testcases/kernel/mem/tunable/overcommit_memory.c
+++ b/testcases/kernel/mem/tunable/overcommit_memory.c
@@ -151,6 +151,7 @@ static void overcommit_memory_test(void)

 }

+__attribute__((optimize("O0")))
 static int heavy_malloc(long size)
 {
 	char *p;
--
2.49.0



More information about the ltp mailing list