-
Bug
-
Resolution: Fixed
-
P3
-
14
-
b08
Shenandoah evacuates OopStorage backed roots in concurrent phase, that may race against OopStorage::release().
During concurrent evacuating OopStorage backed roots, other threads may call OopStorage::release() to release handle, for example:
GC worker: load oop from handle ----- evacuate oop ------------------ store oop --
Mutator: -------------------------------- null handle --- release handle ------------------
During concurrent evacuating OopStorage backed roots, other threads may call OopStorage::release() to release handle, for example:
GC worker: load oop from handle ----- evacuate oop ------------------ store oop --
Mutator: -------------------------------- null handle --- release handle ------------------
- relates to
-
JDK-8226311 Shenandoah: Concurrent evacuation of OopStorage backed weak roots
- Resolved