serialization page mechanism on PPC

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Mon Jan 20 05:26:26 PST 2014


Hi Tiago,

I have a question regarding the linux implementation on PPC.

HotSpot contains a mechanism that forces a thread to enforce memory
ordering by using a "serialization page".

The idea is that thread t1 who rarely changes a certain field forces another
thread t2 to update it's memory state by poisoning a page.  I.e.:

t1 sets a shared page called serialization page to "READ" and then again to "RW".

t2 does a write on this page.  If a page fault occurs after t1 changed the state,
and assuming that handling this fault forces a memory serialization, this works
as a conditional "sync" instruction  executed in t2.

We use this mechanism in our VM for a long time without problems, but never
explored the background of this trick.  Now it was questioned while discussing
the OpenJDK PPC changes.

Do you know whether this works on PPC as it does on x86 etc? Or do you know
somebody who can answer this question?

Basically it drills down to two questions:

-          Will t2 execute some os-operation on the write after t1 changed the access rights?

-          Does this operation force a sync or ptwsync or equivalent?

Actually, we also would like to know whether this works on AIX.

Best regards,
  Goetz.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/ppc-aix-port-dev/attachments/20140120/75b028e7/attachment.html 


More information about the ppc-aix-port-dev mailing list