SIGSEGV in GraalVM 0.31
Doug Simon
doug.simon at oracle.com
Mon Feb 19 12:41:27 UTC 2018
Hi Arthur,
Could you please open an issue for this crash at https://github.com/oracle/graal/issues. We trying to move to GitHub as the primary point for handling Graal issues. I'll update that issue once a debug JVM binary is available.
-Doug
> On 19 Feb 2018, at 13:25, Dmitry Samersoff <dms at samersoff.net> wrote:
>
> Arthur,
>
> It looks like the crash always happens in get_poll_stub method.
>
> see:
> http://hg.openjdk.java.net/jdk8/jdk8/hotspot/file/tip/src/share/vm/runtime/sharedRuntime.cpp
>
> Could you provide a disassembler around crash point?
>
> Is it possible to try fastdebug version of JVM?
>
> -Dmitry
>
> On 18.02.2018 23:21, Arthur Peters wrote:
>> I have run into a Graal VM crash (SIGSEGV) when executing compiled Scala
>> code. The problem occurs before Truffle initializes and only seems to
>> happen when UseJVMCICompiler is turned on. Currently reproducing this
>> crash requires running the entire Orc compiler
>> (https://github.com/orc-lang/orc) and the crash is non-deterministic
>> (occasionally the program runs much longer before crashing). Adding
>> -XX:JVMCIThreads=1 works around the crash. I'm pretty sure it's a
>> concurrency race somewhere in Graal that our Scala parser code can trigger.
>>
>> I have a couple of questions:
>>
>> 1. How can I determine what part of the Orc code is causing the crash?
>> I want to be able to create a minimal test case for you all.
>> 2. For future issues like this, is it possible to disable the JVMCI
>> last-tier compiler for some packages (or jars) but not others? That
>> would make it easy to enable Graal on the packages that need it and
>> disable it for others.
>>
>> Below is a trimmed version of one of the core dumps (well information I
>> extracted from it). A number of compete dumps are at:
>> https://gist.github.com/arthurp/9e725864d1c211e4238677cc787f6ba4
>>
>> Thanks!!
>>
>> -Arthur
>>
>> GDB bt output:
>>
>> Program terminated with signal SIGSEGV, Segmentation fault.
>>
>> Thread 1 (Thread 0x7f67d232d700 (LWP 29881)):
>> #0 0x00007f67d106f8ca in SharedRuntime::get_poll_stub(unsigned char*)
>> () from /home/amp/shared/graalvm/graalvm-0.31/jre/lib/amd64/server/libjvm.so
>> #1 0x00007f67d0fcd8d9 in JVM_handle_linux_signal () from
>> /home/amp/shared/graalvm/graalvm-0.31/jre/lib/amd64/server/libjvm.so
>> #2 0x00007f67d0fc1b48 in signalHandler(int, siginfo*, void*) () from
>> /home/amp/shared/graalvm/graalvm-0.31/jre/lib/amd64/server/libjvm.so
>> #3 <signal handler called>
>> #4 0x00007f67b8087a1b in ?? ()
>> [...]
>>
>> jstack output:
>>
>> Thread 29881: (state = IN_JAVA)
>>
>> (this is not cut, the crashed thread always shows IN_JAVA and no stack.)
>>
>
>
> --
> Dmitry Samersoff
> http://devnull.samersoff.net
> * There will come soft rains ...
>
More information about the graal-dev
mailing list