[14] RFR(s) : 8234173: assert(loader != __null && oopDesc::is_oop(loader)) failed: loader must be oop

Kim Barrett kim.barrett at oracle.com
Thu Jan 16 08:46:57 UTC 2020

> On Jan 16, 2020, at 3:25 AM, Markus Gronlund <markus.gronlund at oracle.com> wrote:
> Hi Sangheon,
> What (and if so how) is concurrently reading this? Since the operation of both clearing and resetting the mark word happens in a safepoint (only the VMThread running)?

G1, ZGC, and (we think) Shenandoah all have GC threads that do marking (using side tables,
not the mark words) and maybe other things right on through safepoints.  See, for example,
Thomas’s comment from 1/10 in the bug, about the G1ConcurrentMarkThread.

More information about the hotspot-runtime-dev mailing list