RFR (M): 8029396: PPC64 (part 212): Several memory ordering fixes in C-code.

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Dec 2 13:42:12 PST 2013

These changes need to be reviewed by GC and Runtime group. Especially 
first 2 changes (CMS).

The rest 6 changes are less performance critical and, I think they are 


On 12/2/13 8:51 AM, Lindenmaier, Goetz wrote:
> Hi,
> This change contains a row of fixes to the memory ordering in runtime, GC etc.
> http://cr.openjdk.java.net/~goetz/webrevs/8029396-0-memo/
> These are:
> - Accessing arrays in CMS (compactibleFreeListSpace.cpp)
> - CMS: Do release when marking a card dirty. The release must only be done if GC is running. (several files)
> - Method counter initialization (method.hpp).
> - Order accessing f1/f2 in constant pool cache.
> - Release stores in OopMapCache constructor (instanceKLass.cpp).
> - BiasedLocking: Release setting object header to displaced mark.
> - Release state of nmethod sweeper (sweeper.cpp).
> - Do barriers when writing the thread state (thread.hpp).
> Please review and test this change.
> If requested, I can part this into smaller changes.  But for now
> I wanted to put them all into one change as they all address the
> problems with the PPC memory model.
> Best regards,
>    Goetz.

More information about the hotspot-dev mailing list