RFR: 8325937: runtime/handshake/HandshakeDirectTest.java causes "monitor end should be strictly below the frame pointer" assertion failure on AArch64

Andrew Haley aph at openjdk.org
Wed Oct 2 12:33:36 UTC 2024


On Tue, 1 Oct 2024 18:38:33 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

> Add missing StoreLoad fences in handshaking code to match safepoint code.  Thanks to @pchilano for finding this bug.
> 
> Tested with tier1-4 and tier8 which has Kitchensink in it.

> > Hans Boehm has this historical info, https://hboehm.info/misc_slides/reordering.pdf
> 
> I may be misunderstanding things a bit here, but slides 17 and 19 seem to imply that `pthread_mutex_lock` _does_ need a full barrier (whereas `std::mutex` wouldn't necessarily).

This is 2007-era historical info, so be careful. I don't know how any subsequent discussions played out. 

I'm fairly sure that expecting pthread_mutex_lock to be a full fence isn't required by any standard. I'd find that very surprising.

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

PR Comment: https://git.openjdk.org/jdk/pull/21295#issuecomment-2388526105


More information about the hotspot-runtime-dev mailing list