RFR (XS): G1 - Missing memory barrier in start_cset_region_for_worker
mikael.gerdin at oracle.com
Tue Jan 19 14:45:32 UTC 2016
On 2016-01-19 15:30, Axel Siebenborn wrote:
> we have seen crashes on ppc due to a missing memory barrier in
> The code checks, if a HeapRegion is valid by comparing the gc_time_stamp
> with a store value in an array and loads the according HeapRegion from
> an other array. However, these entries are written by an other thread.
> The two loads have to be ordered by a memory barrier, to prevent them
> from being re-ordered and accessing a stale value for the HeapRegion.
This makes sense and corresponds to the storestore() at
2569 _worker_cset_start_region_time_stamp[worker_i] = gc_time_stamp;
2570 return result;
Looks good, I can sponsor it.
> Could I please have reviews and a sponsor for this fix.
More information about the hotspot-gc-dev