RFR: Allow young collection to suspend marking in old generation [v3]
Roman Kennke
rkennke at openjdk.java.net
Tue Feb 23 08:03:05 UTC 2021
On Mon, 22 Feb 2021 18:14:29 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:
>> earthling-amzn has updated the pull request incrementally with five additional commits since the last revision:
>>
>> - Remove superfluous new line
>> - Remove redundant is_oop check
>> - Remove unused parameter, remove unnecessary casting
>> - Remove debug scaffolding, inline object aging
>> - Do not allow heuristics to change requested gc cause once a mutator request has been made
>
> Quick scan
It looks much better now, hotspot_gc_shenandoah is passing. I'll give it a more in-depth review later. I've tried to run some programs with generational mode, and it survives a few cycles, until it crashes with:
# Internal Error (/home/rkennke/src/openjdk/shenandoah/src/hotspot/share/gc/shenandoah/shenandoahCollectionSet.cpp:101), pid=6682, tid=6688
# assert(!_heap->get_region(index)->is_cset()) failed: should have been cleared before
Stack: [0x00007fd9529cf000,0x00007fd952acf000], sp=0x00007fd952acd530, free space=1017k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x1592374] ShenandoahCollectionSet::clear()+0x1a4
V [libjvm.so+0x15cb5fa] ShenandoahGeneration::prepare_regions_and_collection_set(bool)+0x20a
V [libjvm.so+0x15ac5bb] ShenandoahDegenGC::op_degenerated()+0x24b
V [libjvm.so+0x15ad4e0] ShenandoahDegenGC::entry_degenerated()+0xf0
V [libjvm.so+0x16e391c] VM_ShenandoahDegeneratedGC::doit()+0x2c
V [libjvm.so+0x19126b7] VM_Operation::evaluate()+0x187
V [libjvm.so+0x19372fc] VMThread::inner_execute(VM_Operation*)+0x30c
V [libjvm.so+0x1937c75] VMThread::loop()+0x255
V [libjvm.so+0x1937f1c] VMThread::run()+0xcc
V [libjvm.so+0x183baf8] Thread::call_run()+0xf8
V [libjvm.so+0x13b860e] thread_native_entry(Thread*)+0x10e
See also attached hs_err.
I'll look into this a bit.
[hs_err_pid6682.log](https://github.com/openjdk/shenandoah/files/6027426/hs_err_pid6682.log)
-------------
PR: https://git.openjdk.java.net/shenandoah/pull/19
More information about the shenandoah-dev
mailing list