Integrated: 8254263: Remove special_runtime_exit_condition() check from ~ThreadInVMForHandshake()

Patricio Chilano Mateo pchilanomate at openjdk.java.net
Wed Oct 14 22:20:11 UTC 2020


On Fri, 9 Oct 2020 14:10:16 GMT, Patricio Chilano Mateo <pchilanomate at openjdk.org> wrote:

> Hi all,
> 
> Please review the following patch that removes the call to handle_special_runtime_exit_condition() in
> ~ThreadInVMForHandshake(). This check was added by 8223572 to prevent a JavaThread that was suspended while trying to
> process a handshake to transition back to java without noticing it was suspended. Since 8238761, a JavaThread executing
> HandshakeState::process_by_self() will never become safe. It comes from an unsafe state and remains unsafe, so it
> cannot be suspended during that time. Removing this check also removes one of the reasons
> SafepointMechanism::process_if_requested() is recursive (the other one remains SafepointSynchronize::block()). Tested
> in mach5, tiers 1-7.  Thanks, Patricio

This pull request has now been integrated.

Changeset: 55d760d4
Author:    Patricio Chilano Mateo <pchilanomate at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/55d760d4
Stats:     43 lines in 4 files changed: 8 ins; 20 del; 15 mod

8254263: Remove special_runtime_exit_condition() check from ~ThreadInVMForHandshake()

Reviewed-by: rrich, dholmes, dcubed, rehn

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

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


More information about the hotspot-runtime-dev mailing list