RFR: 8268773: Improvements related to: Failed to start thread - pthread_create failed (EAGAIN)

David Holmes dholmes at openjdk.java.net
Thu Jul 1 06:31:11 UTC 2021


Please review this simple enhancement that:

1. Retries OS thread creation of it fails due to EAGAIN

This is potentially of limited use as you would need some resources to be released for subsequent calls to succeed.

2. Prints the name of the thread being started in the warning/log messages

This is also of limited use as JavaThread's do not have their correct name at this stage, nor do some system threads. But others do, so it can be informative.

I looked at trying to (separately) unify this code into a Posix version, but the platform differences are such that it makes it very difficult to try and share code. So this simply updates each the existing code in place.

Testing: 
  - builds from tiers 1-3 and GHA
  - manual inspection of output from a simple thread exhaustion test (runtime/Thread/ThreadCountLimit.java)
  - manual inspection of os+thread logging on java -version

Thanks,
David

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

Commit messages:
 - 8268773: Improvements related to: Failed to start thread - pthread_create failed (EAGAIN)

Changes: https://git.openjdk.java.net/jdk/pull/4648/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4648&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268773
  Stats: 49 lines in 4 files changed: 22 ins; 0 del; 27 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4648.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4648/head:pull/4648

PR: https://git.openjdk.java.net/jdk/pull/4648


More information about the hotspot-runtime-dev mailing list