From 816c8d5786f72cf56519154a43e4dbb631e1fbd2 Mon Sep 17 00:00:00 2001 From: Peter Shipton Date: Wed, 13 Sep 2023 13:31:59 -0400 Subject: [PATCH] Output -Xmso debug info when _JAVA_LAUNCHER_DEBUG is set Signed-off-by: Peter Shipton --- src/java.base/share/native/libjli/java.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/java.base/share/native/libjli/java.c b/src/java.base/share/native/libjli/java.c index bc400690ae..21ee8cd90a 100644 --- a/src/java.base/share/native/libjli/java.c +++ b/src/java.base/share/native/libjli/java.c @@ -221,9 +221,10 @@ static jlong initialHeapSize = 0; /* inital heap size */ #define STACK_SIZE_MINIMUM (64 * KB) #endif -static void +static jboolean parseXmso(JLI_List openj9Args) { + jboolean result = JNI_FALSE; size_t i = openj9Args->size; while (i > 0) { i -= 1; @@ -231,6 +232,7 @@ parseXmso(JLI_List openj9Args) jlong tmp = 0; if (parse_size(openj9Args->elements[i] + 5, &tmp)) { threadStackSize = tmp; + result = JNI_TRUE; if (threadStackSize > 0 && threadStackSize < (jlong)STACK_SIZE_MINIMUM) { threadStackSize = STACK_SIZE_MINIMUM; } @@ -239,6 +241,7 @@ parseXmso(JLI_List openj9Args) } } JLI_List_free(openj9Args); + return result; } static void @@ -246,7 +249,10 @@ parseXmsoInFile(const char *filename) { JLI_List openj9Args = JLI_ParseOpenJ9ArgsFile(filename); if (openj9Args != NULL) { - parseXmso(openj9Args); + jboolean result = parseXmso(openj9Args); + if (JLI_IsTraceLauncher() && result) { + printf("Set -Xmso%ld from file %s\n", (long)threadStackSize, filename); + } } } @@ -255,7 +261,10 @@ parseXmsoInEnv(const char *envVar) { JLI_List openj9Args = JLI_List_new(8); /* 8 is arbitrary */ if (JLI_ParseOpenJ9ArgsFromEnvVar(openj9Args, envVar)) { - parseXmso(openj9Args); + jboolean result = parseXmso(openj9Args); + if (JLI_IsTraceLauncher() && result) { + printf("Set -Xmso%ld from env var %s\n", (long)threadStackSize, envVar); + } } } @@ -1013,6 +1022,9 @@ AddOption(char *str, void *info) if (threadStackSize < (jlong)STACK_SIZE_MINIMUM) { threadStackSize = STACK_SIZE_MINIMUM; } + if (JLI_IsTraceLauncher()) { + printf("Set -Xmso%ld from command line\n", (long)threadStackSize); + } } }