[kaffe] hello 1.1.5 failure on xscale-be - maybe GC deamon?..

Hazan Shlomi Shlomi.Hazan at tadirantele.com
Wed May 18 12:31:19 PDT 2005


Hi

I have been trying to run a simple hello on an MVL3.1/Xscale BE.

The config was:
KAFFE_CFG="--target=armv5teb-hardhat-linux --host=armv5teb-hardhat-linux --build=i686-pc-linux-gnu --prefix=$XSCALE_TARGET_ROOT/usr/local/kaffe --with-includes=$XSCALE_TARGET_ROOT/usr/include --with-libraries=$XSCALE_TARGET_ROOT/lib:$XSCALE_TARGET_ROOT/usr/lib --enable-debug --without-gmp --with-engine=intrp --enable-xscale --with-threads=unix-pthreads --enable-pure-java-math --disable-native-awt --without-x --without-kaffe-qt-awt --without-kaffe-x-awt -without-classpath-gtk-awt --disable-gcj --disable-sound --enable-classpath-load-library --without-alsa --without-esd"

Since failed and frozen without any information, I have recompiled with debug, to find out WWW (what-went-wrong).

Running with:
VMDEBUGOPTS="-vmdebug ALL"
got a seg-fault (!).

ending with the message:

>> START LOG

exit crit section (0)
exit crit
======================== thread dump =========================
thread list lock owner: (nil)
Segmentation fault
>> LOG END

Where first error is:

>> START LOG

got lpath /usr/local/kaffe/jre/lib/arm:/usr/local/kaffe/lib:/usr/local/kaffe/jre
/lib and libraryPath /usr/local/kaffe/jre/lib/arm:/usr/local/kaffe/lib:/usr/loca
l/kaffe/jre/lib
trying to load /usr/local/kaffe/jre/lib/arm/libnative
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
gc_heap_malloc: freelist 47 at 0x17c00 free 0xc50d4
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
Native lib /usr/local/kaffe/jre/lib/arm/libnative
        LOAD desc=0xb7f90 index=0 loader=(nil)
enter crit section[0] from: 0xbd018 [tid:16384, java:(nil))
critical section (1) established
exit crit section (0)
Couldn't find JNI_OnLoad in library handle 0 == /usr/local/kaffe/jre/lib/arm/lib
native.
Error message is /usr/local/kaffe/jre/lib/arm/libkaffevm-1.1.5.so: undefined sym
bol: JNI_OnLoad.

>> LOG END

>> BUT OH BUT <<

- running with VMDEBUGOPTS="-vmdebug INIT,VMCONDS,VMTHREAD,EXCEPTION,JARFILES,INT_NATIVE,CLASSFILE,VMCLASSLOADER"
gave another output:

<< LOG START

Calling internal class loader for java/security/AllPermission$AllPermissionColle
ction
Loading java/security/AllPermission$AllPermissionCollection.class
Adding field java/security/AllPermission$AllPermissionCollection:serialVersionUI
D
Adding field java/security/AllPermission$AllPermissionCollection:all_allowed
Adding method java/security/AllPermission$AllPermissionCollection:add(Ljava/secu
rity/Permission;)V (11)
Adding method java/security/AllPermission$AllPermissionCollection:implies(Ljava/
security/Permission;)Z (11)
Adding method java/security/AllPermission$AllPermissionCollection:elements()Ljav
a/util/Enumeration; (11)
Adding method java/security/AllPermission$AllPermissionCollection:<init>()V (2)
Adding method java/security/AllPermission$AllPermissionCollection:<init>(Ljava/s
ecurity/AllPermission$1;)V (0)
Call to native java/lang/Object.getClass()Ljava/lang/Class;.
Call to native java/lang/System.identityHashCode(Ljava/lang/Object;)I.
Calling internal class loader for java/security/Principal
Loading java/security/Principal.class
Adding method java/security/Principal:equals(Ljava/lang/Object;)Z (401)
Adding method java/security/Principal:toString()Ljava/lang/String; (401)
Adding method java/security/Principal:hashCode()I (401)
Adding method java/security/Principal:getName()Ljava/lang/String; (401)
Calling internal class loader for java/lang/IllegalThreadStateException
Loading java/lang/IllegalThreadStateException.class
Adding field java/lang/IllegalThreadStateException:serialVersionUID
Adding method java/lang/IllegalThreadStateException:<init>()V (1)
Adding method java/lang/IllegalThreadStateException:<init>(Ljava/lang/String;)V
(1)
attachFakedThreadInstance(main)=0x112484 done
initThreads() done
createDaemon finaliser
createDaemon gc

>> LOG END

this is the freeze point.
looks like no deamon threads for us GC....

Then trying just "java --help" yielded the same error and froze at the same point.

NOTES:
 - I did not use LIBFFI

 - I am not sure the seg-fault is directly related to original problem (just seems to freeze rather than a seg-fault). seems like linkage is broken for some reason (wrong LD..PATH ?). maybe then some other problem still (as may be deduced by the log snippet ahead), and then hell embarks...

- complete log files are available, problem is reproducible.


"Trinity.... Help"
Shlomi

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://kaffe.org/pipermail/kaffe/attachments/20050518/24072997/attachment-0005.htm 


More information about the kaffe mailing list