This RFE is to properly fix JDK-8186035 and reinstate the assert that was removed.
During initial marking, multiple threads might race
to copy an object and they will all try to mark the new copy if it ends
up in the old gen. In the marking code, there there used to be an assert that the
object should be valid. However, only the thread that won the race to
copying the object is allowed to read the contents of the 'to' copy, and
all other threads might see garbage and could fail on this assert.
During initial marking, multiple threads might race
to copy an object and they will all try to mark the new copy if it ends
up in the old gen. In the marking code, there there used to be an assert that the
object should be valid. However, only the thread that won the race to
copying the object is allowed to read the contents of the 'to' copy, and
all other threads might see garbage and could fail on this assert.
- clones
-
JDK-8186035 Klass::decode_klass_not_null() asserted on bad oop
-
- Closed
-