From 29881eff01e14640e690be16e3e74880ff0b9002 Mon Sep 17 00:00:00 2001 From: Abdulrahman Alattas Date: Fri, 1 Mar 2024 10:14:54 -0500 Subject: [PATCH] Use LDR_CNTRL on AIX to use 64KB pages and modify removeAixExpectedVars Signed-off-by: Abdulrahman Alattas --- src/java.base/unix/native/libjli/java_md.c | 7 ++++++- test/jdk/java/lang/ProcessBuilder/Basic.java | 6 ++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/java.base/unix/native/libjli/java_md.c b/src/java.base/unix/native/libjli/java_md.c index a71206c77cb..913214c94bc 100644 --- a/src/java.base/unix/native/libjli/java_md.c +++ b/src/java.base/unix/native/libjli/java_md.c @@ -25,7 +25,7 @@ /* * =========================================================================== - * (c) Copyright IBM Corp. 2020, 2023 All Rights Reserved + * (c) Copyright IBM Corp. 2020, 2024 All Rights Reserved * =========================================================================== */ @@ -312,6 +312,11 @@ CreateExecutionEnvironment(int *pargc, char ***pargv, if (setenv(mallocOptionsName, mallocOptionsValue, 0) != 0) { fprintf(stderr, "setenv('MALLOCOPTIONS=multiheap,considersize') failed: performance may be affected\n"); } + const char * ldrCntrlName = "LDR_CNTRL"; + const char *ldrCntrlValue = "TEXTPSIZE=64K@DATAPSIZE=64K@STACKPSIZE=64K@SHMPSIZE=64K"; + if (setenv(ldrCntrlName, ldrCntrlValue, 0) != 0) { + fprintf(stderr, "setenv('LDR_CNTRL=TEXTPSIZE=64K@DATAPSIZE=64K@STACKPSIZE=64K@SHMPSIZE=64K') failed: performance may be affected\n"); + } #endif #ifdef SETENV_REQUIRED diff --git a/test/jdk/java/lang/ProcessBuilder/Basic.java b/test/jdk/java/lang/ProcessBuilder/Basic.java index 547eb88d343..79431972454 100644 --- a/test/jdk/java/lang/ProcessBuilder/Basic.java +++ b/test/jdk/java/lang/ProcessBuilder/Basic.java @@ -23,7 +23,7 @@ /* * =========================================================================== - * (c) Copyright IBM Corp. 2020, 2022 All Rights Reserved + * (c) Copyright IBM Corp. 2020, 2024 All Rights Reserved * =========================================================================== */ @@ -69,6 +69,7 @@ import java.nio.file.Paths; import java.nio.file.StandardCopyOption; import java.util.*; +import java.util.AbstractMap.SimpleImmutableEntry; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.security.*; @@ -811,8 +812,9 @@ private static String removeMacExpectedVars(String vars) { */ private static String removeAixExpectedVars(String vars) { String cleanedVars = vars.replace("AIXTHREAD_GUARDPAGES=0,", ""); - // OpenJ9 adds MALLOCOPTIONS + // OpenJ9 adds MALLOCOPTIONS and LDR_CNTRL cleanedVars = cleanedVars.replace("MALLOCOPTIONS=multiheap,considersize,", ""); + cleanedVars = cleanedVars.replace("LDR_CNTRL=TEXTPSIZE=64K@DATAPSIZE=64K@STACKPSIZE=64K@SHMPSIZE=64K,", ""); return cleanedVars; }