jvm crash using eclipse

Ronald Klop ronald-freebsd8 at klop.yi.org
Sat Oct 31 17:18:01 UTC 2009


On Sat, 31 Oct 2009 17:57:10 +0100, Patrick Mackinlay  
<patrick at spacesurfer.com> wrote:

> The problem happens regardless of whether I compile the jdk with or
> without ipv6 support, however I do have an IPv6 address as well as an
> ipv4 one. I use subclipse-1.6.2, this is the only thing that I think
> will use TCP/IP (does subclipse run the command line client or do the
> connection itself?). The only other things that will use TCP/IP are the
> unit tests, but eclipse will often crash before I have run any.
>
> The error is intermittent it can happen 10 times in 5 minutes or once a
> day. It seems to be more stable if I turn off "Build automatically"
> (which will presumably reduces the amount of concurrency), it also seems
> to crash most often when opening or closing projects. However, it is so
> intermittent that my observations could well be luck related.
>
> I have compiled my jdk with debug symbols and looking at the core dump
> with gdb gives the following stack trace for the thread that bombs:
>
> (gdb) ba
> #0  0x00000008007acd2c in thr_kill () from /lib/libc.so.7
> #1  0x000000080083c2bb in abort () from /lib/libc.so.7
> #2  0x0000000800fe2d69 in os::abort () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #3  0x00000008011175cf in VMError::report_and_die () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #4  0x0000000800fe618b in JVM_handle_bsd_signal () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #5  <signal handler called>
> #6  0x0000000800d0c724 in PhaseChaitin::gather_lrg_masks () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #7  0x0000000800d0e392 in PhaseChaitin::Register_Allocate () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #8  0x0000000800d5e303 in Compile::Code_Gen () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #9  0x0000000800d5f948 in Compile::Compile () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #10 0x0000000800cfac98 in C2Compiler::compile_method () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #11 0x0000000800d6377d in CompileBroker::invoke_compiler_on_method ()
> from /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #12 0x0000000800d64505 in CompileBroker::compiler_thread_loop () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #13 0x00000008010d6bad in JavaThread::thread_main_inner () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #14 0x0000000800fe53f6 in java_start () from
> /usr/local/diablo-jdk1.6.0/jre/lib/amd64/server/libjvm.so
> #15 0x000000080064b4d1 in pthread_getprio () from /lib/libthr.so.3
> #16 0x0000000000000000 in ?? ()
> Cannot access memory at address 0x7ffffeef2000
>
>
> Looks like the signal happens in PhaseChaitin::gather_lrg_masks whatever
> that is.
>
> Also note that tomcat6 is stable, but I do not load tomcat very much at
> all (only ever has one occasional HTTP client, so no request  
> concurrency).
>
> At the moment my jdk is compiled with ipv6 support, I am going to try
> compiling it again with this option off. I will use a
> portupgrade -fR eclipse
> so that all upstream dependencies are also recompiled.

Somethings happens in the compiler. Does it happen with all versions?  
Diablo/jdk16/openjdk6? And you can run java in interpreter mode, but will  
be little bit slow I guess.

Ronald.




More information about the freebsd-java mailing list