RFR: 8329748: Change default value of AssertWXAtThreadSync to true

Dean Long dlong at openjdk.org
Mon May 6 21:52:55 UTC 2024


On Mon, 6 May 2024 11:10:08 GMT, Tobias Holenstein <tholenstein at openjdk.org> wrote:

> The debug flag `-XX:+AssertWXAtThreadSync` conservatively  checks for correct W^X thread state at possible safepoints or handshake. The flag is useful to detect missing `MACOS_AARCH64_ONLY(ThreadWXEnable __wx(WXWrite, thread));`. Since the check is cheap and it is a `AARCH64_ONLY(develop(..))` only flag it makes sense to enable the flag by default. 
> 
> There was one missing `MACOS_AARCH64_ONLY(ThreadWXEnable __wx(WXWrite, thread));` to make all tests (tier1-7) pass.

src/hotspot/share/jfr/support/jfrIntrinsics.cpp line 77:

> 75: void* JfrIntrinsicSupport::return_lease(JavaThread* jt) {
> 76:   DEBUG_ONLY(assert_precondition(jt);)
> 77:   MACOS_AARCH64_ONLY(ThreadWXEnable __wx(WXWrite, jt));

It seems like this could be moved down.  It doesn't seem to be needed for the Java --> native transition.  Is it needed for the JfrJavaEventWriter::flush() call?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/19102#discussion_r1591592616


More information about the hotspot-dev mailing list