Loading... (original) (raw)

Most of compiler/rtm/ tests use inflated monitors because by default RTM locking is disabled for stack locks.
In order to inflate monitor associated with newly created object these tests use method rtm.AbortProvoker::inflateMonitor.
After that monitor remains released until actual testing begins. If safepoint synchronization happens when monitor unused, then that monitor will be deflated. As a result RTM-based lock elision won't be used and tests will fail.
Issue could be reproduced w/ +DeoptimizeALot.

backported by

Backport - A issue that is required to port a Bug or Feature into another product release. This issue type is generally associated with the main Bug/Feature to represent each individual release of the port. JDK-8065977 compiler/rtm/ tests fail due to monitor deflation at safepoint synchronization

Backport - A issue that is required to port a Bug or Feature into another product release. This issue type is generally associated with the main Bug/Feature to represent each individual release of the port. JDK-8079954 compiler/rtm/ tests fail due to monitor deflation at safepoint synchronization

Backport - A issue that is required to port a Bug or Feature into another product release. This issue type is generally associated with the main Bug/Feature to represent each individual release of the port. JDK-8083190 compiler/rtm/ tests fail due to monitor deflation at safepoint synchronization

Backport - A issue that is required to port a Bug or Feature into another product release. This issue type is generally associated with the main Bug/Feature to represent each individual release of the port. JDK-8086507 compiler/rtm/ tests fail due to monitor deflation at safepoint synchronization

Backport - A issue that is required to port a Bug or Feature into another product release. This issue type is generally associated with the main Bug/Feature to represent each individual release of the port. JDK-8137565 compiler/rtm/ tests fail due to monitor deflation at safepoint synchronization

blocks

Bug - A problem which impairs or prevents the functions of the product. JDK-8049355 compiler/rtm/locking/TestRTMLockingThreshold test may fail if transaction was aborted by interrupt

is blocked by

Enhancement - null JDK-8068272 Extend WhiteBox API with methods that check monitor state and force safepoint

(1 blocks, 1 is blocked by)