Re: [Sablevm-developer] sablevm hang
Brought to you by:
egagnon
|
From: Etienne G. <gag...@uq...> - 2004-06-14 22:50:43
|
Hi Joe,
Could you also type Ctrl-\ [e.g. SIGQUIT], when it hangs? This would
dump the Java stack trace.
Etienne
Joseph Paris wrote:
> Heya,
>
> I'm running into an issue were the sablevm seems to be hanging on what i
> think is a threading related issue. I've narrowed down where in code
> the hang occurs, but i'm not sure _why_ it occurs. I'm providing the
> class and instantiation along with a portion of strace output. if more
> strace output would help, please let me know.
>
> Any help would be greatly appreciated.
>
> System config:
> Suse 9.1 updated; x86
>
> Thanks,
> Joe
>
> ------AwtUtils.java from the JXTA distribution-----
> ****Executed as AwtUtils.initAsDaemon()****
>
>
> import java.awt.Frame;
>
> public class AwtUtils {
>
> public static void initAsDaemon() {
> (new Thread() {
> public void run() {
> try {
> Frame f = new Frame();
> f.dispose();
> } catch (Throwable t) {
> }
> }
> public void doit() {
> setDaemon(true);
> setName("awt daemon initializer");
> start();
> try {
> join();
> } catch (InterruptedException ie) {
> }
> }
> }).doit();
> }
> }
>
>
> -------------------Strace output---------------------
>
> open("/usr/local/lib/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such
> file or directory)
> open("tls/i686/sse2/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such
> file ordirectory)
> open("tls/i686/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("tls/sse2/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("tls/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("i686/sse2/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("i686/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("sse2/libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("libfontconfig.so.1", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("/usr/lib/libfontconfig.so.1", O_RDONLY) = 13
> read(13, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\223"...,
> 512) = 512
> fstat64(13, {st_mode=S_IFREG|0755, st_size=204755, ...}) = 0
> old_mmap(NULL, 170408, PROT_READ|PROT_EXEC, MAP_PRIVATE, 13, 0) =
> 0x41f97000
> madvise(0x41f97000, 170408, MADV_SEQUENTIAL|0x1) = 0
> old_mmap(0x41fbc000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
> 13, 0x25000) = 0x41fbc000
> old_mmap(0x41fc0000, 2472, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x41fc0000
> close(13) = 0
> open("/usr/local/lib/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such
> file or d irectory)
> open("tls/i686/sse2/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file
> or directory)
> open("tls/i686/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("tls/sse2/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("tls/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("i686/sse2/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("i686/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("sse2/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such
> file or directory)open("libfreetype.so.6", O_RDONLY) = -1 ENOENT (No
> such file or directory)open("/usr/lib/libfreetype.so.6", O_RDONLY) = 13
> read(13, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\346"...,
> 512) = 512
> fstat64(13, {st_mode=S_IFREG|0755, st_size=473346, ...}) = 0
> old_mmap(NULL, 429584, PROT_READ|PROT_EXEC, MAP_PRIVATE, 13, 0) =
> 0x41fc1000
> madvise(0x41fc1000, 429584, MADV_SEQUENTIAL|0x1) = 0
> old_mmap(0x42023000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
> 13, 0x62000) = 0x42023000
> close(13) = 0
> open("/usr/local/lib/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such file
> or directory)
> open("tls/i686/sse2/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("tls/i686/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("tls/sse2/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such
> file or directory)open("tls/libexpat.so.0", O_RDONLY) = -1 ENOENT (No
> such file or directory)open("i686/sse2/libexpat.so.0", O_RDONLY) = -1
> ENOENT (No such file or directory)
> open("i686/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such file or
> directory)open("sse2/libexpat.so.0", O_RDONLY) = -1 ENOENT (No such
> file or directory)open("libexpat.so.0", O_RDONLY) = -1 ENOENT (No
> such file or directory)open("/usr/lib/libexpat.so.0", O_RDONLY) = 13
> read(13, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P!\0\000"...,
> 512) = 512
> fstat64(13, {st_mode=S_IFREG|0755, st_size=160096, ...}) = 0
> old_mmap(NULL, 124104, PROT_READ|PROT_EXEC, MAP_PRIVATE, 13, 0) =
> 0x4202a000
> madvise(0x4202a000, 124104, MADV_SEQUENTIAL|0x1) = 0
> old_mmap(0x42046000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
> 13, 0x1c000) = 0x42046000
> close(13) = 0
> munmap(0x41a40000, 122337) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> write(1, "[verbose class: loading \"java/be"..., 60[verbose class: loading
> "java/beans/PropertyChangeSupport"]
> ) = 60
> open("/home/paris/software/sablevm//share/sablevm/sablevm-classpath/java/beans/PropertyChangeSupport.class",
> O_RDONLY) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=5035, ...}) = 0
> mmap2(NULL, 5035, PROT_READ, MAP_PRIVATE, 13, 0) = 0x41a40000
> munmap(0x41a40000, 5035) = 0
> close(13) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> write(1, "[verbose class: loading \"gnu/jav"..., 63[verbose class: loading
> "gnu/java/awt/peer/gtk/GtkMainThread"]
> ) = 63
> open("/home/paris/software/sablevm//share/sablevm/sablevm-classpath/gnu/java/awt/peer/gtk/GtkMainThread.class",
> O_RDONLY) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=1021, ...}) = 0
> mmap2(NULL, 1021, PROT_READ, MAP_PRIVATE, 13, 0) = 0x41a40000
> munmap(0x41a40000, 1021) = 0
> close(13) = 0
> write(1, "[verbose class: loading \"gnu/jav"..., 64[verbose class: loading
> "gnu/java/awt/peer/gtk/GtkGenericPeer"]
> ) = 64
> open("/home/paris/software/sablevm//share/sablevm/sablevm-classpath/gnu/java/awt/peer/gtk/GtkGenericPeer.class",
> O_RDONLY) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=1045, ...}) = 0
> mmap2(NULL, 1045, PROT_READ, MAP_PRIVATE, 13, 0) = 0x41a40000
> munmap(0x41a40000, 1045) = 0
> close(13) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
> brk(0) = 0x8093000
> brk(0x80b9000) = 0x80b9000
> mmap2(NULL, 2101248, PROT_READ|PROT_WRITE|PROT_EXEC,
> MAP_PRIVATE|MAP_ANONYMOUS,-1, 0) = 0x42049000
> mprotect(0x42049000, 4096, PROT_NONE) = 0
> clone(child_stack=0x42249b08,
> flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
> parent_tidptr=0x42249bf8, {entry_number:6, base_addr:0x42249bb0,
> limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
> limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0x42249bf8)
> = 6137
> futex(0x8072e00, FUTEX_WAIT, 0, NULL <unfinished ...>
>
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
> Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
> Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
> REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
> _______________________________________________
> Sablevm-developer mailing list
> Sab...@li...
> https://lists.sourceforge.net/lists/listinfo/sablevm-developer
>
>
--
Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/
SableVM: http://www.sablevm.org/
SableCC: http://www.sablecc.org/
|