[oe] [meta-java] openjre-8: java from master/master-next crashes on startup

Jacob Kroon jacob.kroon at gmail.com
Tue Jan 21 07:00:48 UTC 2020


Hi Richard,

I still can't use openjre-8 in either warrior, zeus or master builds, 
due to the crash below. I wonder, is anyone successfully using openjre-8 
in either of these releases ?

I see the crash both in my custom machine and in qemux86-64. If it makes 
a difference, I'm using

PREFERRED_PROVIDER_virtual/java-initial-native = "cacao-initial-native"
PREFERRED_PROVIDER_virtual/java-native = "cacao-native"

since building with jamvm has always been broken for me.

Any hints ?

Cheers,
Jacob

On 10/13/19 11:33 AM, Jacob Kroon wrote:
> Hi,
>
> For me, this has been the status for quite a while now. First of all, 
> openjre-8 from master/master-next doesn't build on my Fedora 30 box, 
> I've been using the patch attached to this mail to get it to build.
>   Secondly, java always crashes on startup here:
>
>> #0  Node::Node (this=0x805fa88, req=3)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/node.cpp:327
>> #1  0xb7499b63 in RegionNode::RegionNode (required=3, this=0x805fa88)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/cfgnode.hpp:73
>> #2  LoopNode::LoopNode (backedge=0x0, entry=0x0, this=0x805fa88)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/loopnode.hpp:88
>> #3  RootNode::RootNode (this=0x805fa88)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/rootnode.hpp:37
>> #4  Compile::Init (this=0x977feaf8, aliaslevel=0)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/compile.cpp:1079
>> #5  0xb74a02c5 in Compile::Compile (this=0x977feaf8, 
>> ci_env=0x977ff188,     generator=0xb7895270 
>> <OptoRuntime::new_instance_Type()>, stub_function=0xb7897070 
>> <OptoRuntime::new_instance_C(Klass*, JavaThread*)> 
>> "U\211\345WVS\350\245+\237\377\201\303\205\217\062", 
>> stub_name=0xb7a0a62f "_new_instance_Java", is_fancy_jump=0, 
>> pass_tls=true,     save_arg_registers=false, return_pc=false)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/compile.cpp:1012
>> #6  0xb789587b in OptoRuntime::generate_stub (env=0x977ff188,     
>> gen=0xb7895270 <OptoRuntime::new_instance_Type()>, 
>> C_function=0xb7897070 <OptoRuntime::new_instance_C(Klass*, 
>> JavaThread*)> "U\211\345WVS\350\245+\237\377\201\303\205\217\062", 
>> name=0xb7a0a62f "_new_instance_Java",     is_fancy_jump=0, 
>> pass_tls=true, save_argument_registers=false, return_pc=false)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/runtime.cpp:181
>> #7  0xb7895a5f in OptoRuntime::generate (env=0x977ff188)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/runtime.cpp:147
>> #8  0xb7417de9 in C2Compiler::init_c2_runtime ()
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/runtime/thread.hpp:1854
>> #9  0xb7417e35 in C2Compiler::initialize (this=0xb706b180)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/opto/c2compiler.cpp:102
>> #10 0xb74a508c in CompileBroker::init_compiler_runtime ()
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/compiler/compileBroker.cpp:1674
>> #11 0xb74ab6ed in CompileBroker::compiler_thread_loop ()
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/compiler/compileBroker.cpp:1772
>> #12 0xb79238d5 in compiler_thread_entry (thread=0xb7079400, 
>> __the_thread__=0xb7079400)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/runtime/thread.cpp:3230
>> #13 0xb792d782 in JavaThread::thread_main_inner (this=0xb7079400)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/share/vm/runtime/thread.hpp:1035
>> #14 0xb7820ce4 in java_start (thread=0xb7079400)
>>     at 
>> /usr/src/debug/openjre-8/172b11-r0/jdk8u-33d274a7dda0/hotspot/src/os/linux/vm/os_linux.cpp:790
>> #15 0x4121244c in start_thread (arg=<optimized out>) at 
>> pthread_create.c:479
>> #16 0x4113bd56 in clone () at 
>> ../sysdeps/unix/sysv/linux/i386/clone.S:108
>
> The Node::Node() constructor uses an IDX_INIT() macro:
>
>> #define IDX_INIT(req) this->Init((req), (Compile*) this->_out)
>
> and Node::Init() does:
>
>> 297     inline int Node::Init(int req, Compile* C) {
>> 298      assert(Compile::current() == C, "must use operator 
>> new(Compile*)");
>> 299      int idx = C->next_unique();
>
> and here, this->_out = C = null, which I think leads to a segfault on 
> line 299.
>   I've tried looking at upstream jdk8u but can't find anything. Does 
> anyone have an idea of whats going on here, or if I should raise the 
> issue to openjdk ml ?
>
> Cheers,
> Jacob


More information about the Openembedded-devel mailing list