On Mon, 7 Jun 2021 03:18:32 GMT, Henry Jen <henry...@openjdk.org> wrote:
>> …d on macOS >> >> This patch simply round up the specified stack size to multiple of the >> system page size. >> >> Test is trivial, simply run java with -Xss option against following code. On >> MacOS, before the fix, running with `-Xss159k` and `-Xss160k` would get >> `7183` and `649` respectively. After fix, both would output `649`, while >> `-Xss161k` would be same as `-Xss164k` and see 691 as the output. >> >> ```code:java >> public class StackLeak { >> public int depth = 0; >> public void stackLeak() { >> depth++; >> stackLeak(); >> } >> >> public static void main(String[] args) { >> var test = new StackLeak(); >> try { >> test.stackLeak(); >> } catch (Throwable e) { >> System.out.println(test.depth); >> } >> } >> } > > Henry Jen has updated the pull request with a new target base due to a merge > or a rebase. The incremental webrev excludes the unrelated changes brought in > by the merge/rebase. The pull request contains seven additional commits since > the last revision: > > - Cast type > - Merge > - Change java -X output for -Xss > - Merge > - Only try to round-up when current value failed > - Avoid overflow on page size > - JDK-8236569: -Xss not multiple of 4K does not work for the main thread on > macOS Hi Henry, I'm okay with these changes in the current form. The help text needs tweaking - see CSR request. Thanks, David src/java.base/share/classes/sun/launcher/resources/launcher.properties line 175: > 173: \ configuration and continue\n\ > 174: \ -Xss<size> set java thread stack size\n\ > 175: \ The actual size may be round up to multiple of > system\n\ See updated help text in the CSR request. ------------- Marked as reviewed by dholmes (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/4256