diff -r 51293eef580c -r 929dfc251a28 hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp --- a/hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp Tue Jan 19 05:28:34 2016 -0800 +++ b/hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp Tue Jan 19 09:39:28 2016 +0100 @@ -2551,6 +2551,7 @@ // Previous workers starting region is valid // so let's iterate from there start_ind = (cs_size * (worker_i - 1)) / active_workers; + OrderAccess::loadload(); result = _worker_cset_start_region[worker_i - 1]; }