RFR: 8293252: Shenandoah: ThreadMXBean synchronizer tests crash with IU+aggressive mode

Ashutosh Mehra duke at openjdk.org
Wed Sep 14 20:48:00 UTC 2022


On Wed, 14 Sep 2022 19:51:14 GMT, William Kemper <wkemper at openjdk.org> wrote:

> Please help me understand why VM_ThreadDump would be modifying oops?

The relevant stack trace for the VMThread (at the point of assertion failure) is:


#8  0x00007fd7e35a0c09 in ShenandoahAsserts::assert_not_in_cset (interior_loc=interior_loc at entry=0x7fd5a00043c0, obj=..., 
    file=file at entry=0x7fd7e3a121c0 "/home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp", line=line at entry=246)
    at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#9  0x00007fd7e27ca136 in ShenandoahBarrierSet::AccessBarrier<548932ul, ShenandoahBarrierSet>::oop_store_not_in_heap<oop> (value=..., addr=0x7fd5a00043c0)
    at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#10 AccessInternal::PostRuntimeDispatch<ShenandoahBarrierSet::AccessBarrier<548932ul, ShenandoahBarrierSet>, (AccessInternal::BarrierType)0, 548932ul>::oop_access_barrier (addr=0x7fd5a00043c0, value=...)
    at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/access.inline.hpp:69
#11 0x00007fd7e2d2cc93 in AccessInternal::RuntimeDispatch<548932ul, oop, (AccessInternal::BarrierType)0>::store (value=..., addr=0x7fd5a00043c0)
    at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#12 AccessInternal::PreRuntimeDispatch::store<548932ul, oop> (value=..., addr=0x7fd5a00043c0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/accessBackend.hpp:682
#13 AccessInternal::store_reduce_types<548932ul, oop> (value=..., addr=0x7fd5a00043c0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/accessBackend.hpp:961
#14 AccessInternal::store<524292ul, oop, oop> (value=..., addr=0x7fd5a00043c0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/accessBackend.hpp:1114
#15 Access<524288ul>::oop_store<oop, oop> (value=..., addr=0x7fd5a00043c0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/access.hpp:252
#16 OopHandle::OopHandle (this=<optimized out>, storage=<optimized out>, obj=...) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopHandle.inline.hpp:47
#17 0x00007fd7e381e920 in ThreadConcurrentLocks::add_lock (this=this at entry=0x7fd5a0004310, o=...) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#18 0x00007fd7e381eac0 in ConcurrentLocksDump::add_lock (o=..., thread=<optimized out>, this=0x7fd5a6bfe820) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#19 ConcurrentLocksDump::add_lock (this=0x7fd5a6bfe820, thread=<optimized out>, o=...) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/services/threadService.cpp:832
#20 0x00007fd7e381ebf6 in ConcurrentLocksDump::build_map (this=this at entry=0x7fd5a6bfe820, aos_objects=aos_objects at entry=0x7fd5a0003f40)
    at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/oops/oopsHierarchy.hpp:91
#21 0x00007fd7e381f00a in ConcurrentLocksDump::dump_at_safepoint (this=0x7fd5a6bfe820) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/services/threadService.cpp:810
#22 0x00007fd7e38e4bbc in VM_ThreadDump::doit (this=0x7fd5a56c11b0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmOperations.cpp:280
#23 0x00007fd7e38e4f6a in VM_Operation::evaluate (this=this at entry=0x7fd5a56c11b0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmOperations.cpp:71
#24 0x00007fd7e390c4c8 in VMThread::evaluate_operation (this=0x7fd5a6bfea50, op=0x7fd5a56c11b0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmThread.cpp:282
#25 VMThread::inner_execute (this=this at entry=0x7fd7dc2499f0, op=<optimized out>) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmThread.cpp:429
#26 0x00007fd7e390d172 in VMThread::loop (this=this at entry=0x7fd7dc2499f0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmThread.cpp:496
#27 0x00007fd7e390d3e0 in VMThread::run (this=0x7fd7dc2499f0) at /home/asmehra/data/ashu-mehra/jdk/src/hotspot/share/runtime/vmThread.cpp:175


The VMThread is creating a new OopHandle and as part of that it creates a new oop https://github.com/openjdk/jdk/blob/a75ddb836b2de0e75a65dbfa3b2f240db07a7d31/src/hotspot/share/oops/oopHandle.inline.hpp#L47

-------------

PR: https://git.openjdk.org/jdk/pull/10268



More information about the hotspot-gc-dev mailing list