RFR: 8354560: Exponentially delay subsequent native thread creation in case of EAGAIN [v6]

Yannik Stradmann duke at openjdk.org
Mon May 19 09:01:46 UTC 2025


> This change introduces an exponential backoff when hitting `EAGAIN` during native thread creation in hotspot.
> 
> In contrast to the current solution, where we retry to create a native thread up to three times in a tight loop, hotspot will will thereby be more kind to an already depleted resource, reduce stress on the kernel and become more robust on systems under high load.
> 
> The proposed modifications to `os_linux.cpp` have substantially improved system stability in a mid-sized Jenkins cluster and have been in production within our systems over the past three years. I have verbatim ported these to the other platforms, which previously also relied on identical logic.

Yannik Stradmann 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:

 - Clean up initializaiton/use of trials_remaining
 - Merge remote-tracking branch 'upstream/master' into robust_pthread
 - Remove restrictive scopes
 - Reduce interim thread start log level to debug
 - Merge remote-tracking branch 'upstream/master' into robust_pthread
 - Fix build on Windows: Sleep() only accepts milliseconds
 - Exponentially delay native thread creation retries

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/24682/files
  - new: https://git.openjdk.org/jdk/pull/24682/files/fede12c6..6d6c9f74

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=24682&range=05
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24682&range=04-05

  Stats: 40648 lines in 1309 files changed: 18277 ins; 15949 del; 6422 mod
  Patch: https://git.openjdk.org/jdk/pull/24682.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24682/head:pull/24682

PR: https://git.openjdk.org/jdk/pull/24682


More information about the hotspot-runtime-dev mailing list