--- old/src/share/vm/gc/g1/g1BlockOffsetTable.cpp 2016-09-29 18:05:35.951239178 -0400 +++ new/src/share/vm/gc/g1/g1BlockOffsetTable.cpp 2016-09-29 18:05:35.847238662 -0400 @@ -227,7 +227,7 @@ while (n <= next_boundary) { q = n; oop obj = oop(q); - if (obj->klass_or_null() == NULL) return q; + if (obj->klass_or_null_acquire() == NULL) return q; n += block_size(q); } assert(q <= next_boundary && n > next_boundary, "Consequence of loop");