Q: Should we use 64bit atomic in x86_64 patch_verified_entry code?

Dmitry Samersoff dmitry.samersoff at bell-sw.com
Wed Oct 5 12:55:13 UTC 2022


Hello Everybody,

I'm working on a crash that seems to be related to CMC[1] - the JVM 
crashes when a method become not re-entrant because a JavaThread 
executing a compiled method reaches an instruction partially-assembled 
during patching of verified entry point.

In the void NativeJump::patch_verified_entry()

we atomically patch first 4 bytes, then atomically patch 5th byte, then 
atomically patch first 4 bytes again.

Is it better (from CMC point of view) to patch atomically 8 bytes
at once?

1. http://cr.openjdk.java.net/~jrose/jvm/hotspot-cmc.html

-Dmitry

-- 
Dmitry.Samersoff at bell-sw.com
Technical Professional at BellSoft


More information about the hotspot-dev mailing list