[jdk22u] RFR: 8323782: Race: Thread::interrupt vs. AbstractInterruptibleChannel.begin

Richard Reingruber rrich at openjdk.org
Mon Apr 8 09:24:28 UTC 2024


Hi,

this PR contains a backport of commit https://github.com/openjdk/jdk/commit/4018b2b19629ddb8cd7a56e064dfef371f23e5fa.

I'd like to do the backport because jdk 22 is affected by the issue. The included test hangs without the change.
Besides it will reduce the noise in jck tests we're doing regularly (the test api/java_net/ServerSocket/AcceptInterruptibleTests_PlatformThreads fails sometimes because of the issue).

The original fix does not apply due to renaming of a local variable. Also the context differs because there's no `postInterrupt` method to be called.
Nevertheless I'd consider the risk low because of the small size of the fix.

Tested with the included test.

The fix passed our CI testing: JTReg tests: tier1-4 of hotspot and jdk. All of Langtools and jaxp. JCK, SPECjvm2008, SPECjbb2015, Renaissance Suite, and SAP specific tests.
Testing was done with fastdebug builds on the main platforms and also on Linux/PPC64le.

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

Commit messages:
 - 8323782: Race: Thread::interrupt vs. AbstractInterruptibleChannel.begin

Changes: https://git.openjdk.org/jdk22u/pull/130/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk22u&pr=130&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8323782
  Stats: 103 lines in 2 files changed: 97 ins; 5 del; 1 mod
  Patch: https://git.openjdk.org/jdk22u/pull/130.diff
  Fetch: git fetch https://git.openjdk.org/jdk22u.git pull/130/head:pull/130

PR: https://git.openjdk.org/jdk22u/pull/130


More information about the jdk-updates-dev mailing list