RFR(XXS): 8165018: Missing memory barrier for PPC64 in Unsafe_GetObjectVolatile

Doerr, Martin martin.doerr at sap.com
Mon Sep 5 08:35:50 UTC 2016


Hi David and Kim,

thanks for reviewing.

Seems like we all share the opinion that the missing G1 barrier is a bug which should get fixed.
Would you prefer to handle it in a separate bug+webrev? Otherwise I can create a webrev for both issues.

Best regards,
Martin


-----Original Message-----
From: Kim Barrett [mailto:kim.barrett at oracle.com] 
Sent: Samstag, 3. September 2016 02:04
To: David Holmes <david.holmes at oracle.com>
Cc: Doerr, Martin <martin.doerr at sap.com>; hotspot-runtime-dev at openjdk.java.net; hotspot-gc-dev at openjdk.java.net
Subject: Re: RFR(XXS): 8165018: Missing memory barrier for PPC64 in Unsafe_GetObjectVolatile

> On Sep 2, 2016, at 1:03 AM, David Holmes <david.holmes at oracle.com> wrote:
> 
> Hi Martin,
> 
> Adding GC folk
> 
> On 30/08/2016 8:51 PM, Doerr, Martin wrote:
>> Hi,
>> 
>> we found that a memory barrier for PPC64 is missing in the current Unsafe implementation. get_volatile already contains the memory barrier for "support_IRIW_for_not_multiple_copy_atomic_cpu". The same is needed in Unsafe_GetObjectVolatile.
>> 
>> Here's my webrev:
>> http://cr.openjdk.java.net/~mdoerr/8165018_UnsafePPC64/webrev.00/
> 
> That looks fine to me.

Looks good to me too.

>> And while looking at it I wonder why Unsafe_GetObjectVolatile does not contain a G1 barrier like Unsafe_GetObject. Is it not possible to use the Volatile version to access the referent field of a Reference?
> 
> That looks like a bug to me. :)

Looks like a bug to me too.

>> Please review. As it is shared code, I will need a sponsor, please.
> 
> I can sponsor.
> 
> Thanks,
> David
> 
>> Best regards,
>> Martin





More information about the hotspot-gc-dev mailing list