RFR: enqueue barrier + some other things
Aleksey Shipilev
shade at redhat.com
Wed Jun 20 13:45:40 UTC 2018
On 06/20/2018 03:25 PM, Roland Westrelin wrote:
>
>> Yes. I think we'd better have first patch that does not move the code, makes the actual code
>> changes, maybe renaming methods, but keeping their bodies at the same code positions. Then the
>> second patch that moves the code blocks around. It would be much easier to backport this way, as
>> actual changes would be visible in first patch, and second patch could be reimplemented by
>> reshuffling the existing code.
>
> Here you go:
>
> http://cr.openjdk.java.net/~roland/shenandoah/refactor-mem-utilities/webrev.00/
Thank you, this is much more understandable! Perhaps a good style would be introducing "phase" and
"C" local variables, so superfluous variable renames are out of the picture too -- your call.
Ran tier3_gc_shenandoah, and there are multiple failures like:
# SIGSEGV (0xb) at pc=0x000015326716d737, pid=65257, tid=65274
#
# JRE version: OpenJDK Runtime Environment (11.0) (fastdebug build
11-internal+0-adhoc.shade.shenandoah-jdk)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 11-internal+0-adhoc.shade.shenandoah-jdk, mixed mode,
tiered, compressed oops, shenandoah gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x1b22737] Node::in(unsigned int) const [clone .isra.60] [clone .constprop.239]+0x7
Current CompileTask:
C2: 174 76 4 java.util.ImmutableCollections$SetN$SetNIterator::nextIndex (56 bytes)
Stack: [0x0000153232c9e000,0x0000153232d9f000], sp=0x0000153232d97ae0, free space=998k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native
code)
V [libjvm.so+0x1b22737] Node::in(unsigned int) const [clone .isra.60] [clone .constprop.239]+0x7
V [libjvm.so+0x1b416db] ShenandoahWriteBarrierNode::pin_and_expand(PhaseIdealLoop*)+0x105b
V [libjvm.so+0x1316d8d] PhaseIdealLoop::build_and_optimize(LoopOptsMode)+0xd2d
V [libjvm.so+0x1b377fc] ShenandoahWriteBarrierNode::expand(Compile*, PhaseIterGVN&, int&)+0x21c
V [libjvm.so+0xadcf97] Compile::Optimize()+0xe97
V [libjvm.so+0xade3c2] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool,
DirectiveSet*)+0x10d2
V [libjvm.so+0x8b2823] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x2e3
V [libjvm.so+0xaebc2f] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x49f
V [libjvm.so+0xaecae1] CompileBroker::compiler_thread_loop()+0x2d1
V [libjvm.so+0x1d584ef] JavaThread::thread_main_inner()+0x2df
V [libjvm.so+0x1d587dd] JavaThread::run()+0x22d
V [libjvm.so+0x1582b42] thread_native_entry(Thread*)+0x112
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list