[aarch64-port-dev ] AARCH64 stage: next steps

David Holmes david.holmes at oracle.com
Thu Jan 22 10:12:22 UTC 2015


On 22/01/2015 6:30 PM, Lindenmaier, Goetz wrote:
> Hi,
>
> This is quite badly documented flag, I wouldn't want to add new
> dependencies to that:
>
>    /* UseMembar is theoretically a temp flag used for memory barrier         \
>     * removal testing.  It was supposed to be removed before FCS but has     \
>     * been re-added (see 6401008) */

Yes this is a badly documented flag. While originally (when we only had 
TSO systems) it allowed you to switch between the memory serialization 
pseudo-membar trick and full membars/fences,  you need UseMembar for any 
platform for which the memory serialization trick is not guaranteed to 
work. As we have discussed before we consider that to be any non-TSO 
platform, but PPC64 decided otherwise (did Aarch64 do the same?). :)

David

> At that location, ppc needs a membar always.  If we set UseMemBar to true,
> serialization page is not used any more, right?  That's not what this local barrier
> is about, it's needed even with serialization pages.
>
> Best regards,
>    Goetz
>
>
>
>
> -----Original Message-----
> From: hotspot-runtime-dev [mailto:hotspot-runtime-dev-bounces at openjdk.java.net] On Behalf Of Dean Long
> Sent: Mittwoch, 21. Januar 2015 21:12
> To: Andrew Haley; Vladimir Kozlov; aarch64-port-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net
> Subject: Re: [aarch64-port-dev ] AARCH64 stage: next steps
>
> On 1/21/2015 7:26 AM, Andrew Haley wrote:
>> On 01/21/2015 03:05 PM, Andrew Haley wrote:
>>> On 01/20/2015 11:34 PM, Vladimir Kozlov wrote:
>>>> I pushed 8068053 and 8068054 changes today.
>>>> Are these the last changes?
>>> Yes.
>> Oops, I forgot one:
>>
>> https://bugs.openjdk.java.net/browse/JDK-8069593
>>
>> webrev at
>>
>> http://cr.openjdk.java.net/~aph/aarch64-8069593-2/
>>
>> Andrew.
>>
>
> Doesn't the OrderAccess::fence() take care of this when UseMembar is
> true?  If so, then
> perhaps the
>
> #if defined(PPC64) || defined (AARCH64)
>
> build-time check should be replaced with a runtime check ofUseMembar.
>
> dl
>


More information about the aarch64-port-dev mailing list